Appel du système Linux Chdir en C

Appel du système Linux Chdir en C
Les modifications du répertoire de travail actuel d'un appareil sont effectuées à l'aide de la méthode «Chdir». Dans diverses circonstances, vous pouvez décider de modifier le dossier de travail actuel de votre appareil. Ou vous souhaitez exécuter un script C à partir d'un dossier au lieu de votre répertoire de travail actuel. Par conséquent, pour exécuter ce code C spécifique, vous devez modifier votre dossier de travail actuel. De plus, la méthode «GetCWD» du langage de codage C peut être utilisée pour déterminer rapidement quand le dossier de travail actuel a changé. Maintenant, nous utiliserons la fonction chdir () de C dans cet article pour modifier un répertoire de travail.

Exemple 01:

Commençons par le fonctionnement de la fonction chdir () de C dans le système d'exploitation Linux. Pour cela, vous devez vous rendre à peu près sûr que le compilateur de C est déjà monté à votre fin. Dans la plupart des cas, nous avons tendance à utiliser le compilateur «GCC» de C dans notre système d'exploitation Kali Linux. Pour commencer par cet exemple, nous devons avoir un fichier C avec l'extension «C». Nous l'avons nommé P1.C et a essayé de l'ouvrir avec l'éditeur «Nano» de Linux comme présenté ci-dessous.

Lorsque votre fichier s'ouvre dans l'éditeur, vous devez commencer à coder dedans. Nous avons commencé notre programme C en ajoutant les principales bibliothèques d'en-tête de C qui sont les incontournables de tout programme C. Par conséquent, le stdio.H et Unistd.Les bibliothèques d'en-tête H sont utilisées pour s'assurer que l'entrée et la sortie standard peuvent circuler dans le programme. L'Unistd.L'en-tête H a été utilisé pour utiliser certaines fonctions standard de C qui sont nécessaires pour cet exemple en particulier. Maintenant, nous avons commencé la fonction du pilote principal () de C dans ce code pour s'exécuter automatiquement lors de l'exécution. La variable de type de caractère «chemin» a été définie avec une taille de 100 car elle ne stocke que 100 valeurs.

L'instruction de fonction printf () a été utilisée pour imprimer simplement le dossier de répertoire de travail actuel de ce fichier C à l'aide de la fonction "getCWD ()". Cette fonction utilise la variable de tableau «Path» avec une taille de 100 pour y obtenir le répertoire de travail actuel et le transmettre à l'instruction de fonction printf () pour l'affichage. Maintenant, il est temps d'utiliser la fonction chdir (). Nous pouvons transmettre n'importe quelle sorte de caractères pour spécifier si nous voulons avancer dans le répertoire ou nous déplacer dans la direction arrière dans le même répertoire.

Donc, nous avons essayé les caractères «…» de l'instruction de fonction chdir () pour passer du répertoire de travail actuel dans la direction arrière i.e. Un niveau en dessous du répertoire de travail actuel. Notez qu'à l'heure actuelle, nous travaillons dans le dossier du projet de notre répertoire de travail «Linux» du système Kali Linux. Maintenant, nous sommes au répertoire «Linux» au lieu du répertoire «Project» après avoir utilisé la fonction «Chdir». Maintenant, nous avons à nouveau essayé l'instruction "printf ()" pour afficher le répertoire de travail actuel à l'aide de la fonction "GetCWD". Notre programme se termine par l'instruction RETOUR 0.

Après avoir enregistré ce programme C, nous devons le compiler en utilisant le compilateur «GCC» que nous avons déjà configuré à notre fin. En utilisant cette instruction GCC, nous avons créé un fichier d'objet de ce fichier C nommé «P1.out ”en utilisant l'option -o comme affiché ci-dessous.

Maintenant, lorsque vous exécutez son fichier d'objet dans votre terminal Linux, vous obtiendrez d'abord le répertoire de travail utilisé par le programme avant l'utilisation de la fonction chdir (). Après l'utilisation de la fonction chdir (), nous avons déménagé dans le seul répertoire ci-dessous et ce répertoire particulier «Home» est affiché.

Exemple 02:

En utilisant les mêmes bibliothèques d'en-têtes, nous avons commencé ce code de programme. Dans la fonction principale () de ce programme, nous avons utilisé l'instruction «if» en utilisant la fonction chdir ().

Cette fonction vérifiera si «/ user» existe dans le système ou non en définissant la condition «/ utilisateur!= 0 ”. Si le répertoire n'existe pas dans le système actuel, l'appel de fonction Perror sera utilisé pour afficher le message d'erreur respectif I.e «Le répertoire des utilisateurs n'existe pas. Nous avons utilisé une autre instruction «si» en utilisant la fonction chdir (). Le but de l'utilisation de la fonction chdir () ici est également le même que nous l'avons fait dans l'instruction IF ci-dessus, qui consiste à vérifier si le répertoire existe ou non en utilisant le «/ temp»!= 0 Condition. La seule différence est l'utilisation d'un nouveau nom de répertoire «/ temp» au lieu de «/ utilisateur» comme vous pouvez le voir sur l'image de code ci-dessous.

Si le répertoire / température n'existe pas dans le système, la fonction Perror utilisée dans l'instruction «IF» jetterait un message d'erreur «/ TEMP répertoire n'existe pas» comme affiché à partir de l'image ci-dessous. Après l'utilisation des deux instructions «IF», ​​nous avons terminé ce code avec l'instruction RETOUR 0 du C. Maintenant, le programme est terminé. Nous avons enregistré notre code C en utilisant le raccourci Ctrl + S avant son exécution.

Maintenant que le fichier a été enregistré dans votre système, nous devons compiler le code C avec le compilateur «GCC» que nous avons déjà monté à notre fin. En utilisant cette instruction, nous avons créé son fichier d'objet «P2.out ”en utilisant l'option -o dans l'instruction.

Après avoir exécuté le fichier d'objet créé «P2.Out »avec le«./ "Caractères, nous avons appris que les deux répertoires mentionnés sur le chemin de" Chdir "n'existent pas dans le système ou que l'erreur affichée au shell l'a démontré correctement.

Conclusion

Dans cet article aujourd'hui, nous avons démontré l'utilisation de la fonction chdir () de C dans le système d'exploitation Kali Linux. Le tout premier exemple illustre comment la fonction chdir () peut être utilisée pour modifier un répertoire de travail I.e., passer d'un répertoire à un autre. Le dernier exemple de C montre comment nous pouvons vérifier si le répertoire de travail actuel spécifié dans le chemin de Chdir () a été existant ou non.