Exemple de Linux «Getopts»

Exemple de Linux «Getopts»
«Getopts» est une commande très utile dans Linux qui est principalement incorporée dans des scripts bash pour prendre des drapeaux et des arguments comme entrées de l'utilisateur. Pour élaborer davantage sur l'utilisation de cette commande dans Linux Mint 20, nous partagerons avec vous deux exemples différents de son utilisation dans cet article.

Exemples «Getopts» dans Linux Mint 20:

Pour une compréhension plus facile et meilleure de la commande «getopts» dans Linux Mint 20, nous avons conçu pour vous deux exemple de scénarios. Avant de vous diriger vers ces scénarios, vous pouvez consulter le manuel d'aide de la commande «Getopts» dans Linux Mint 20 Terminal afin que vous puissiez obtenir l'idée de base sur la syntaxe de cette commande. Vous pouvez voir le manuel d'aide de cette commande en exécutant la commande «Help»:

$ getopts - help

Le manuel d'aide de la commande «getopts» contiendra une brève description de l'utilisation de cette commande avec sa syntaxe comme indiqué dans l'image ci-dessous:

Maintenant, lorsque nous avons parcouru le manuel d'aide de la commande «getopts», nous pouvons procéder à nos exemples de scénarios comme suit:

CAS # 1: Passer des drapeaux à un script bash pour son exécution dans Linux Mint 20:

Dans cet exemple, nous créerons un script bash qui prendra un drapeau comme entrée de l'utilisateur ainsi que la commande d'exécution de ce script bash. Selon la valeur du drapeau fourni, la sortie respective sera affichée. La description détaillée des étapes impliqués dans ce scénario est la suivante:

Étape n ° 1: Écriture d'un script bash:

Tout d'abord, nous écrire un script bash dans notre répertoire d'origine. Nous avons nommé ce fichier comme getopts.shot. Le contenu de ce script bash est affiché dans l'image ci-dessous. Dans le script bash illustré ci-dessous, nous avons une boucle «while» qui s'exécute sur la commande «getopts». Ici, cette commande «getopts» est utilisée pour prendre un drapeau comme entrée de l'utilisateur. La valeur de ce drapeau peut être soit «R», «Y» ou «G» représentant respectivement les couleurs «rouge», «jaune» et «vert». La variable «Option» sera utilisée pour stocker la valeur de l'indicateur fourni par l'utilisateur. Ensuite, nous avons utilisé une instruction «cas» sur la valeur de l'indicateur fourni qui affichera un message personnalisé en fonction de la valeur de l'indicateur «Option». Enfin, nous avons fermé le bloc «Case» avec la déclaration «ESAC» et le bloc «Do» avec la déclaration «Terminé».

Étape # 2: Tester le script bash:

Après avoir créé et enregistré notre script bash, il est maintenant temps de l'exécuter. Nous testerons tous les cas un par un. Tout d'abord, nous exécuterons le script bash avec l'indicateur «-r» pour voir s'il produit la sortie correcte ou non de la manière suivante:

$ bash getopts.sh -r

La sortie personnalisée de notre script bash avec l'indicateur «-r» est affichée dans l'image ci-dessous:

Maintenant, nous allons exécuter le script bash avec l'indicateur «-y» pour voir s'il produit la sortie correcte ou non de la manière suivante:

$ bash getopts.timide

La sortie personnalisée de notre script bash avec l'indicateur «-y» est indiquée dans l'image ci-dessous:

Maintenant, nous allons exécuter le script bash avec l'indicateur «-g» pour voir s'il produit la sortie correcte ou non de la manière suivante:

$ bash getopts.sh -g

La sortie personnalisée de notre script bash avec l'indicateur «-g» est affichée dans l'image ci-dessous:

Enfin, nous exécuterons notre script bash avec n'importe quel drapeau aléatoire, je.e. Un drapeau qui n'est pas valide ou un drapeau qui n'est pas mentionné dans notre script bash dit «-a» de la manière suivante:

$ bash getopts.sh -a

Cette fois, le cas par défaut de notre script bash a été exécuté qui a affiché un message d'erreur depuis que nous avons utilisé un drapeau non valide.

Cas n ° 2: Passage des drapeaux avec des arguments à un script bash pour son exécution dans Linux Mint 20:

Dans cet exemple, nous créerons un script bash qui prendra un drapeau et un argument comme entrée de l'utilisateur ainsi que la commande d'exécution de ce script bash. Selon la valeur de l'indicateur et de l'argument fournis, la sortie respective sera produite. La description détaillée des étapes impliqués dans ce scénario est la suivante:

Étape n ° 1: Écriture d'un script bash:

Le script bash utilisé pour ce cas est illustré dans l'image ci-dessous et est très similaire à celui que nous avons créé pour notre cas # 1. La seule différence est que cette fois, nous n'autorisons pas plusieurs drapeaux. L'utilisateur n'est autorisé qu'à saisir l'indicateur «-r». Cependant, le côlon «:» après le drapeau «R» dans le script bash indique que l'utilisateur est également censé fournir un argument avec le drapeau. Cet argument sera stocké dans la variable «Optarg» par défaut. Pour afficher la valeur de l'argument fourni avec la commande «echo», nous avons utilisé un symbole «$» avant la variable «Optarg».

Étape # 2: Tester le script bash:

Après avoir enregistré ce script bash, il est maintenant temps de le tester. Encore une fois, nous testerons tous les cas un par un. Tout d'abord, nous exécuterons le script bash avec l'indicateur «-r» et un exemple d'argument «noir» pour voir s'il produit la sortie correcte ou non de la manière suivante:

$ bash getopts.sh -r noir

La sortie personnalisée de notre script bash avec le drapeau «-r» et l'argument «noir» est indiqué dans l'image ci-dessous:

Maintenant, nous allons tester ce script avec un drapeau non valide et un argument valide de la manière suivante:

$ bash getopts.sh -a noir

Cette fois, le cas par défaut de notre script bash a été exécuté qui a affiché un message d'erreur depuis que nous avons utilisé un drapeau non valide.

Maintenant, nous allons exécuter ce script bash tout en omettant le drapeau et en passant simplement un argument valide de la manière suivante:

$ bash getopts.sh noir

Cette fois, aucune sortie ne sera produite sur le terminal ou en d'autres termes, notre script bash ne s'exécutera pas car nous avons sauté un drapeau obligatoire.

Enfin, nous exécuterons ce script bash tout en omettant l'argument et en passant simplement le drapeau valide de la manière suivante:

$ bash getopts.sh -r

Encore une fois, le cas par défaut de notre script bash a été exécuté qui a affiché un message d'erreur depuis que nous avons sauté l'argument obligatoire.

Conclusion:

Ces deux exemples sont une très belle représentation de l'utilisation de la commande «getopts» dans un script bash dans Linux Mint 20. Vous pouvez même créer des scénarios plus complexes dans Bash et les associer à la commande "getOpts" pour prendre plus d'un argument et des indicateurs de l'utilisateur comme entrées.