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.