$
$# 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.