Les variables spéciales en shell

$#

$# Contient le nombre d'arguments passe a votre script

$*

$* Contient la liste des paramètres passée au script

$@

Comme $* mais il prend en compte les espaces, on récupère donc les arguments sous forme de tableau.

Par exemple pour ce code :

for var in "$*"
do
echo $var;
done
test.sh "toto tata" tutu

Donnera :

toto tata tutu

Alors que pour ce code :

for var in "$@"
do
echo $var;
done
test.sh "toto tata" tutu

Donnera :

toto tata
tutu

$ ?

$ ? Contient le résultat de la dernière commande exécuté

$$

Le PID du shell

$ !

Le PID de la dernière commande mise en background.

$_

Contient le dernier argument de la précédente commande.

Exemple :

# echo toto
toto
# echo $_
toto

$0 $1 $2

Ces variables contiennent les arguments passés en paramètre à votre script shell.

Vus : 702
Publié par Noplay : 18