Special shell variables
Publié le 22 Février 2010
Lors de l'exécution d'un script on peut avoir besoin de récupérer certains paramètres.
ou encore quand un script appelle un autre script il peut être utile de lui repasser les paramètres d'appel du premier.
On peut avoir besoin de savoir si la dernière commande c'est bien exécuter pour poursuivre le traitement, etc ...
Bref pour toutes ces opérations il existe des variable shell un peu spéciales. En voici donc un résumé :
ou encore quand un script appelle un autre script il peut être utile de lui repasser les paramètres d'appel du premier.
On peut avoir besoin de savoir si la dernière commande c'est bien exécuter pour poursuivre le traitement, etc ...
Bref pour toutes ces opérations il existe des variable shell un peu spéciales. En voici donc un résumé :
$0 | le nom de la commande en train d'être executer |
$1 ... $9 ... | contient chacun des paramètres spécifiés lors de l'exécution de la commande |
$* | contient tous les paramètres spécifiés lors de l'exécution de la commande. C'est l'équivalent de $1 $2 $3 .... |
$@ | contient tous les paramètres spécifiés lors de l'exécution de la commande. C'est l'équivalent de $1 $2 $3 .... mais prend en comptes les quotes " |
$# | contient le nombre de paramètres spécifiés lors de l'exécution de la commande |
$? | le code de retour de la dernière commande exécutée. Permet de détecter si la commande c'est exécutée correctement ($? = 0) ou pas. |
$$ | le numéro de processus du shell. C'est utile pour former des noms de fichiers uniques. |
$! | le numéro de processus de la dernière commande lancée en arrière-plan |
$- | les options courantes utilisées lors de l'invocation de ce shell. |