GNU/Linux >> Tutoriels Linux >  >> Linux

Comment lire les arguments de ligne de commande dans les scripts shell ?

La lecture des entrées de l'utilisateur est une partie de l'équation. Dans l'article d'aujourd'hui, nous allons apprendre à lire les arguments de ligne de commande dans les scripts shell. Les scripts shell sont un outil essentiel pour tout utilisateur Linux. Ils jouent un rôle majeur dans l'automatisation des tâches quotidiennes et la création de vos propres commandes ou macros.

Ces scripts shell peuvent recevoir des entrées de l'utilisateur sous la forme d'arguments.

Lorsque nous passons des arguments à un script shell, nous pouvons les utiliser pour le séquencement local du script. Nous pouvons utiliser ces arguments pour obtenir des sorties et même modifier des sorties comme des variables dans des scripts shell.

Que sont les arguments de ligne de commande ?

Les arguments de ligne de commande sont des paramètres qui sont passés à un script lors de leur exécution dans le shell bash.

Ils sont également appelés paramètres de position sous Linux.

Nous utilisons des arguments de ligne de commande pour indiquer la position en mémoire où la commande et ses paramètres associés sont stockés. Comprendre les arguments de la ligne de commande est essentiel pour les personnes qui apprennent les scripts shell.

Dans cet article, nous allons passer en revue le concept des arguments de ligne de commande ainsi que leur utilisation dans un script shell.

Comment les scripts Shell comprennent les arguments de la ligne de commande

Les arguments de ligne de commande permettent de rendre les scripts shell interactifs pour les utilisateurs. Ils aident un script à identifier les données sur lesquelles il doit fonctionner. Par conséquent, les arguments de ligne de commande sont une partie essentielle de toute utilisation pratique des scripts shell.

Le shell bash a des variables spéciales réservées pour pointer vers les arguments que nous passons à travers un script shell. Bash enregistre ces variables numériquement ($1, $2, $3, … $n)

Ici, le premier argument de ligne de commande dans notre script shell est $1, le deuxième $2 et le troisième est $3. Cela continue jusqu'au 9ème argument. La variable $0 stocke le nom du script ou de la commande elle-même.

Nous avons également des caractères spéciaux qui sont des paramètres positionnels, mais leur fonction est étroitement liée à nos arguments de ligne de commande.

Le caractère spécial $# stocke le nombre total d'arguments. Nous avons également $@ et $* comme caractères génériques qui sont utilisés pour désigner tous les arguments. Nous utilisons $$ pour trouver l'ID de processus du script shell actuel, tandis que $? peut être utilisé pour imprimer le code de sortie de notre script.

Lire les arguments de ligne de commande dans les scripts shell

Nous avons maintenant développé une compréhension des arguments de ligne de commande sous Linux. Il est maintenant temps d'utiliser ces connaissances pour une application pratique de la commande netstat.

Pour ce didacticiel, nous allons passer en revue un exemple pour apprendre à utiliser les arguments de ligne de commande dans votre script shell.

Tout d'abord, nous allons créer un script shell pour démontrer le fonctionnement de toutes les variables réservées dont nous avons parlé dans la section précédente. Utiliser nano ou tout éditeur préféré de votre choix et copiez ce qui suit.

C'est le script shell que nous prévoyons d'utiliser à cette fin.

#!/bin/sh
echo "Script Name: $0"
echo "First Parameter of the script is $1"
echo "The second Parameter is $2"
echo "The complete list of arguments is $@"
echo "Total Number of Parameters: $#"
echo "The process ID is $$"
echo "Exit code for the script: $?"

Une fois que nous aurons terminé, nous enregistrerons le script sous PositionalParameters.sh et quitterons notre éditeur de texte.

Maintenant, nous allons ouvrir la ligne de commande sur notre système et exécuter le script shell avec les arguments suivants.

./PositionalParameters.sh learning command line arguments

Le script s'exécutera avec nos arguments spécifiés et utilisera des paramètres positionnels pour générer une sortie. Si vous avez suivi l'étape correctement, vous devriez voir l'écran suivant.

Notre sortie affiche la sortie correcte en remplaçant les variables réservées par l'argument approprié lorsque nous l'avons appelée.

Le processus a été exécuté sous l'ID de processus 14974 et s'est terminé avec le code de sortie 0.

Conclusion

Être capable de lire des arguments de ligne de commande dans des scripts shell est une compétence essentielle car cela vous permet de créer des scripts qui peuvent prendre des entrées de l'utilisateur et générer une sortie basée sur un chemin logique.

À l'aide d'arguments de ligne de commande, vos scripts peuvent grandement simplifier la tâche répétitive que vous devrez peut-être gérer au quotidien, créez vos propres commandes tout en vous faisant gagner du temps et des efforts.

Nous espérons que cet article a pu vous aider à comprendre comment lire les arguments de ligne de commande dans un script shell. Si vous avez des commentaires, des questions ou des suggestions, n'hésitez pas à nous contacter dans les commentaires ci-dessous.


Linux
  1. Comment utiliser les entrées dans vos scripts shell

  2. Comment passer un argument de ligne de commande dans un script shell ?

  3. Comment gérer les commutateurs dans un script shell ?

  4. Comment faire écho à une nouvelle ligne dans les scripts shell bash

  5. Comment utiliser les fonctions du shell de ligne de commande sous Linux

Comment créer des scripts shell

Comment utiliser le proxy sur la ligne de commande Linux ?

Comment démarrer en ligne de commande Linux

Comment trouver une adresse IP dans la ligne de commande Linux

Comment utiliser if-else dans les scripts shell ?

Comment exécuter une commande dans un script shell ?