Programmation BASH

Comment vérifier si un fichier existe dans bash

Comment vérifier si un fichier existe dans bash
Il existe plusieurs façons de vérifier la disponibilité d'un fichier sous Linux. La commande "test" dans les scripts bash est l'une des approches clés pour vérifier l'existence d'un fichier.
L'objectif de ce guide est de discuter de l'existence d'un fichier dans votre système via des scripts bash :

Comment vérifier l'existence d'un fichier à l'aide de scripts bash :

1) En saisissant le nom du fichier dans le terminal :

Tout d'abord, nous devons créer un fichier de script bash, utilisez la commande mentionnée ci-dessous :

$ touch fichier de test.sh

Le nom du fichier que j'ai créé est "testfile.sh", le ".sh" indique le fichier de script shell :

Ouvrez le "fichier de test.sh" dans n'importe quel éditeur de texte. Ensuite, écrivez le script, enregistrez-le en appuyant sur « enregistrer ».

Une façon est de trouver un fichier en demandant un nom de fichier à l'utilisateur dans le terminal.

Utiliser "-F” pour vérifier l'existence du fichier.

Écrivez le script ci-dessous :

#!/bin/bash
echo "Entrez votre nom de fichier"
lire nouveaufichier1
if [ -f "$nouveaufichier1" ]
ensuite
echo "Le fichier est trouvé"
autre
echo "Le fichier n'est pas trouvé"
Fi

Retournez au terminal et exécutez le fichier pour imprimer la sortie :

./nom de fichier.sh

Le message d'autorisation refusée s'afficherait dans le terminal.

Rendez-le exécutable en exécutant la commande ci-dessous :

$chmod +x fichier de test.sh

Entrez le nom du fichier et il imprimera la sortie :

2) En entrant le nom du fichier lors de l'écriture du script :
Une autre façon de trouver un fichier en donnant le nom du fichier lors de l'écriture du script. Nous avons trois façons de vérifier la disponibilité du fichier. Le premier utilise la commande « test », le second utilise « if » avec une expression entre crochets, et le troisième est également avec « if » mais des crochets doubles comme indiqué ci-dessous :

  1. « tester EXPRESSION."
  2. « si [ EXPRESSION ] »
  3. « si [[ EXPRESSION ]] »

Comprenons-le avec des exemples :

1) tester [ Expression ]
Copiez le script donné et collez-le dans l'éditeur, enregistrez-le :

#!/bin/bash
nom de fichier=fichier1
if test -f "$nom_fichier" ;
ensuite
echo "$fichier a trouvé."
autre
echo "$fichier introuvable"
Fi

Production:

Comme il n'y a pas de tel fichier dans mon répertoire, le code affiche donc le message "Fichier introuvable".

2) si [ Expression ]

Copiez le script suivant pour vérifier si le fichier existe ou non :

#!/bin/bash
nom de fichier=monfichier.SMS
if [ -f "$nom_fichier" ] ;
ensuite
echo "$filename a trouvé."
autre
echo "le nom de fichier n'a pas été trouvé"
Fi

Production:

3) si [[ Expression ]]

Copiez le script écrit ci-dessous et collez-le sur le terminal :

#!/bin/bash
nom de fichier=fichier de test
if [[ -f "$nom_fichier" ]] ;
ensuite
echo "$filename a trouvé."
autre
echo "$nom de fichier n'a pas été trouvé"
Fi

Production:

Pour vérifier le répertoire :

3) En entrant le nom du répertoire lors de l'écriture d'un script

Utilisez le "-ré” flag pour vérifier l'existence d'un répertoire.

Dans le script mentionné ci-dessous, "dir11" est la variable dans laquelle vous stockez le fichier que vous recherchez ; dans cet exemple, je veux vérifier que le nom de répertoire "testDir" existe ou non.

#!/bin/bash
dir11=testDir
si [ -d "$rép11" ]
ensuite
echo "Le répertoire a été trouvé"
autre
echo "Le répertoire n'a pas été trouvé"
Fi

Production:

2) En saisissant le nom du fichier dans le terminal :
Lorsque vous exécutez la commande dans le terminal pour vérifier si le répertoire existe ou non, vous devez saisir le nom du répertoire que vous recherchez :

#!/bin/bash
echo "tapez votre nom de répertoire."
lire Dir1
if [ -d "Dir1" ]
ensuite
echo "le répertoire a été trouvé"
autre
echo "le répertoire n'a pas été trouvé"
Fi

Production:

Vérification du fichier sans utiliser l'instruction "if":

La commande "test" peut être exécutée sans l'instruction "if". Il n'affichera la sortie que si le fichier existe ; sinon, il n'y aurait pas de sortie :

Écrire un scénario :

  1. test -f monfichier.txt && echo "le fichier a été trouvé"

  2. [ -f monfichier.txt ] && echo "$fichier a été trouvé."

  3. [[ -f monfichier.txt ]] && echo "$fichier a été trouvé."

Production:

Vérification du répertoire sans utiliser l'instruction "if":

Utilisez les instructions mentionnées ci-dessous pour vérifier qu'un répertoire existe ou non :

  1. [[ -d testDir ]] && echo "le répertoire existe"

  2. 2) [ -d testDir ] && echo "le répertoire existe"

Production:

Vérification de plusieurs fichiers/répertoires :

1) Vérification de plusieurs fichiers avec des instructions « if » :
Utilisez l'indicateur "-a" pour vérifier l'existence de divers fichiers au lieu d'utiliser des instructions "if/else" imbriquées :

#!/bin/bash
if [ -f nouveau_fichier.txt -a -f nouveaufichier.SMS ]; ensuite
echo "Les deux fichiers existent."
Fi

Une autre façon est :

#!/bin/bash
if [[ -f nouveau_fichier.txt && -f nouveaufichier.SMS ]]; ensuite
echo "Les deux fichiers existent."
Fi

Production:

2) Vérification de plusieurs fichiers sans utiliser l'instruction "if":
Utilisez l'instruction suivante pour vérifier plusieurs fichiers simultanément 1 sans utiliser « if » :

  1. [[ -f nouveau_fichier.txt && -f nouveaufichier.txt ]] && echo "Les deux fichiers quittent."

  2. [[ -f nouveau_fichier.txt && -f nouveaufichier.txt ]] && echo "Les deux fichiers quittent."

Production:

Conclusion:

Cet article a montré comment utiliser les scripts bash pour vérifier un fichier ou un répertoire. Nous avons utilisé différentes options pour vérifier la disponibilité d'un fichier. Tout d'abord, nous utilisons la commande "test" avec différents drapeaux. Ensuite, nous avons appris l'utilisation de "if", imbriqué "if-else", et sans les instructions "if" pour vérifier le fichier ou le répertoire. Nous avons également examiné comment vérifier plusieurs fichiers ou répertoires.

SuperTuxKart pour Linux
SuperTuxKart est un excellent titre conçu pour vous apporter l'expérience Mario Kart gratuitement sur votre système Linux. C'est assez stimulant et am...
Tutoriel Bataille pour Wesnoth
The Battle for Wesnoth est l'un des jeux de stratégie open source les plus populaires auxquels vous pouvez jouer en ce moment. Non seulement ce jeu es...
0 A.ré. Didacticiel
Sur les nombreux jeux de stratégie disponibles, 0 A.ré. parvient à se démarquer comme un titre complet et un jeu tactique très profond bien qu'il soit...