Bash Vérifier si le répertoire existe

Bash Vérifier si le répertoire existe

Les répertoires et les dossiers sont les parties principales et assez importantes de tout système d'exploitation. Sans les répertoires et les fichiers, notre système n'est pas terminé. Les répertoires sont utilisés pour stocker les sous-dossiers et les fichiers qui contiennent des données pour la sécurité et le travail personnel. Dans le système d'exploitation Linux, nous avons également le même système de fichiers I.e., répertoires et sous-dossiers. Bash Programming a proposé certaines des commandes et déclarations très simples pour vérifier si le répertoire spécifique d'un fichier existe ou non ou non. Par conséquent, nous avons décidé d'écrire cet article pour vérifier si le répertoire existe dans notre système Linux ou non.

Exemple 01: Vérifiez si le fichier existe

Commençons par l'exemple de base. Nous allons jeter un œil à la vérification d'un fichier simple dans notre système Linux d'abord i.e., Si existe ou non. Par conséquent, nous avons créé un nouveau fichier de type de texte nommé «Nouveau.txt ”dans le dossier à domicile d'Ubuntu avec l'instruction« Touch ». Nous avons ajouté un texte en une ligne dans le fichier et l'avons affiché sur le shell en utilisant l'instruction «Cat» illustré ci-dessous. La sortie de la commande ci-dessous est attachée dans l'image.

$ touchez nouveau.SMS
$ Cat New.SMS

Maintenant, il est temps de créer un nouveau fichier bash avec l'instruction «Touch» nommée «Direc.sh ”comme ci-dessous. Nous devons ouvrir ce fichier vide pour commencer à coder dedans. Pour cela, nous utilisons l'instruction «Nano» pour la lancer dans l'éditeur GNU Nano. La sortie de la commande ci-dessous est attachée dans l'image.

$ touch direc.shot
$ nano direc.shot

Maintenant, le fichier vide a été ouvert dans l'éditeur Nano. Dans la première ligne de code, nous avons initialisé une variable de fichier «F» tenant un chemin vers un fichier «Nouveau.txt "comme" / home / linux / nouveau.SMS". L'énoncé de bash «if-then» a été utilisé ici pour vérifier si le fichier «Nouveau.txt »existe ou non. La clause «if» est démarrée avec le mot-clé «test» suivi du drapeau «-f» pour les fichiers. Dans les virgules inversées, nous avons ajouté la variable «$ f». Après cela, la clause «alors» a commencé avec l'instruction «Echo» en utilisant le nom de variable pour afficher s'il existe ou non. La partie «alors» de la déclaration «if-then» ne sera exécutée que lorsque la condition «IF» sera vraie.

Exécutons le fichier bash à l'aide du mot-clé «bash» suivi du nom d'un fichier «Direc.sh ”. Comme le fichier existe dans le répertoire domestique de notre système, il a donc exécuté l'instruction Echo et montre que le fichier existe. La sortie de la commande ci-dessous est attachée dans l'image.

$ bash direc.shot

La même chose peut être réalisée avec l'utilisation de crochets à la clause «IF» sans utiliser le mot-clé «Tester» comme indiqué ci-dessous. Exécutons-le pour voir son résultat dans l'écran de sortie bash dans le shell.

Après avoir exécuté ce code mis à jour, nous avons le même résultat que je.e. le fichier existe. La sortie de la commande ci-dessous est attachée dans l'image.

$ bash direc.shot

Exemple 02: Vérifiez si le répertoire existe

Jetons un coup d'œil au code utilisé pour vérifier si le répertoire du dossier existe dans notre système ou non. Pour cela, nous utiliserons un dossier purement nouveau. Par conséquent, dans la zone de requête de Shell Terminal, nous avons essayé la commande «MKDIR» pour créer un nouveau répertoire nommé «Nouveau». Ce répertoire nouvellement créé sera utilisé dans notre code pour vérifier s'il existe ou non. La commande List est exécutée pour voir tous les répertoires et fichiers existants dans le dossier Home. Nous pouvons voir le «nouveau» répertoire répertorié dans la sortie montrée sous le dossier «Musique» et après les «téléchargements». La sortie de la commande ci-dessous est attachée dans l'image.

$ mkdrmir nouveau
$ ls

Ouvrirons le même «Direc.SH ”Fichier dans Nano Editor d'Ubuntu pour créer un nouveau code. Une fois le fichier lancé, nous devons créer une nouvelle variable de répertoire «D» tenant un chemin vers un répertoire nouvellement créé nommé «Nouveau» comme «/ home / linux / new». Les travaux globaux pour vérifier l'existence du répertoire ont été effectués dans la déclaration de Bash «if-the-else». Ainsi, l'instruction «IF» a été lancée avec la condition pour vérifier le répertoire dans un système en utilisant l'indicateur «-d» pour le «répertoire» ainsi que la variable du répertoire dans les virgules inversées. Cette condition a été utilisée entre les crochets. Si la condition s'est satisfaite et que le répertoire existe, la déclaration «alors» sera exécutée avec sa déclaration «Echo». Sinon, la partie «else» de la déclaration sera utilisée avec sa déclaration «Echo» montrant que le fichier n'existe pas. La déclaration globale sera fermée par le mot-clé «fi» comme indiqué ci-dessous.

Maintenant, il est temps d'exécuter notre code bash dans le shell terminal en utilisant la requête «bash» indiquée dans l'image. Après l'avoir exécuté, nous avons obtenu le message de réussite montrant que le répertoire existe. La sortie de la commande ci-dessous est attachée dans l'image.

$ bash direc.shot

Si vous souhaitez réaliser l'exécution de la partie else dans le terminal de la coquille, vous devez supprimer le répertoire afin que la condition ne soit pas satisfaite. Par conséquent, nous avons supprimé le répertoire vide nouvellement rendu «nouveau» du dossier à domicile de notre Ubuntu 20.04 Système. Après cela, nous avons répertorié le contenu du dossier Home à l'aide de la commande List et avons constaté qu'il n'y a pas de répertoire du nom «Nouveau» comme ci-dessous. Après avoir exécuté le même «Direc.SH ”Fichier bash avec l'instruction« bash », nous avons obtenu la sortie montrant que la partie else du code a été exécutée I.e., Le répertoire n'existe pas.

$ ls
$ bash direc.shot

Conclusion

Enfin! Nous avons fait l'explication de la vérification si le répertoire existe dans notre Ubuntu 20.04 Système ou non. Pour cela, nous avons essayé le script bash pour atteindre notre objectif. Nous avons également discuté de l'utilisation de «-f» pour la vérification des fichiers et «-d» pour la vérification des répertoires dans le système. Tous les exemples sont simples et selon notre choix d'utilisateur.