Comment vérifier l'existence d'un argument d'entrée dans un script shell bash

Comment vérifier l'existence d'un argument d'entrée dans un script shell bash
Le script de bash shell est un outil puissant pour automatiser les tâches répétitives et effectuer des opérations complexes sur la ligne de commande. L'un des concepts fondamentaux des scripts shell est d'accepter les arguments d'entrée de l'utilisateur ou d'autres scripts. Lorsque vous traitez des arguments d'entrée, il est essentiel de vérifier si l'argument d'entrée existe ou non pour éviter un comportement inattendu dans le script. Cet article discutera des différentes façons de vérifier l'existence d'arguments d'entrée dans un script de shell bash.

Comment vérifier l'existence d'un argument d'entrée dans un script shell bash

Il existe trois façons différentes:

  1. Utilisation de la commande «Test»
  2. Utilisation de la variable «$ #»
  3. Utilisation de l'option «-N»

Méthode 1: Utilisation de la commande «Test»

La commande «Test», également connue sous le nom de «[», est une commande intégrée dans Bash qui teste diverses conditions. L'une des conditions que nous pouvons tester en utilisant la commande «Test» est de savoir si une variable existe ou non. Voici un exemple de code pour vérifier si un argument d'entrée existe en utilisant la commande «Test»:

#!/ bac / bash
Si [-z "1 $"]
alors
Echo "L'argument d'entrée est manquant."
sortie 1
Fi
Echo "L'argument d'entrée existe."

Ici, l'option «-z» est utilisée avec la commande «Test» pour vérifier si l'argument d'entrée est une chaîne vide ou non. Le script publiera un message d'erreur et sortira avec un code d'état de 1 si l'argument d'entrée est une chaîne vide. Sinon, le script continuera d'exécuter, ci-dessous, j'ai fourni et entrée un argument pour le code afin qu'il affiche le message d'existence de l'entrée de l'argument:

Méthode 2: Utilisation de la variable «$ #»

Le "$ #" La variable stocke le nombre d'arguments d'entrée transmis à un script. Si le script attend au moins un argument d'entrée, nous pouvons vérifier si le "$ #" la variable est supérieure à zéro. Voici un exemple de code pour vérifier si au moins un argument d'entrée existe en utilisant le "$ #" variable:

#!/ bac / bash
Si [$ # -eq 0]
alors
Echo "L'argument d'entrée est manquant."
sortie 1
Fi
Echo "L'argument d'entrée existe."

Ici le "-Eq" l'opérateur est utilisé pour vérifier si le "$ #" La variable est égale à zéro ou non et si la variable «$ #» est égale à zéro, le script affichera un message d'erreur et sortira avec un code d'état de 1. Sinon, le script continuera d'exécuter, ci-dessous, j'ai fourni et entrée un argument pour le code afin qu'il affiche le message d'existence de l'entrée de l'argument:

Méthode 3: Utilisation de l'option «-N»

Le "-N" L'option est utilisée pour vérifier si une variable n'est pas vide. Nous pouvons utiliser cette option pour vérifier si l'argument d'entrée existe ou non. Ci-dessous, j'ai donné un exemple de code qui vérifie si un argument d'entrée existe en utilisant le "-N" option:

#!/ bac / bash
Si [-N "1 $"]
alors
Echo "L'argument d'entrée existe."
autre
Echo "L'argument d'entrée est manquant."
sortie 1
Fi

Ici le "-N" L'option est utilisée pour vérifier si l'argument d'entrée n'est pas vide et si l'argument d'entrée n'est pas vide, le script affichera un message de réussite. Sinon, le script affichera un message d'erreur et sortira avec un code d'état de 1, ci-dessous, j'ai fourni et entrée un argument pour le code afin qu'il affiche le message d'existence de l'entrée de l'argument:

Conclusion

Dans les scripts shell, la vérification de l'existence d'arguments d'entrée est une étape essentielle pour s'assurer que le script s'exécute comme prévu. Nous pouvons utiliser différentes techniques pour vérifier l'existence d'arguments d'entrée, tels que l'utilisation de la commande «Test», la variable «$ #» ou l'option «-N». En mettant en œuvre ces techniques, nous créons des scripts de shell plus robustes et fiables qui peuvent gérer les arguments d'entrée.