Bash & Shell

De BlaxWiki
Aller à la navigationAller à la recherche

[Doc très interessante en anglais sur les quote en shell]

[Doc Général pour débutant en shell]

  • Ordre de lecture et d'interprétation.

Il faut savoir que le shell lit plusieurs fois la ligne avant d'exécuter la commande. Cette lecture se fait dans l'ordre suivant :

 1. substition de variables : le shell remplace les variables par leurs valeurs
 2. substitution de commandes : le shell remplace une variable par son contenu qui est le résultat d'une commande
 3. interprétation des pipes et des redirections
 4. expansion des noms de fichiers : interprétation des caractères spéciaux pour compléter un nom de fichier et/ou de répertoire
 5. exécution de la commande 


  • Dans un script shell ou dans une console :
 $? 	C'est la valeur de sortie de la dernière commande. Elle vaut 0 si la commande s'est déroulée sans pb.
 $0 	Cette variable contient le nom du script
 $1 à $9 	Les (éventuels) premiers arguments passés à l'appel du script
 $# 	Le nombre d'arguments passés au script 
 $* 	La liste des arguments à partir de $1
 $$ 	le n° PID du processus courant
 $! 	le n° PID du processus fils


  • Dans les man pages ou les aides :
- Tout texte isolé, sans [] (crochet), {} (accolade), <> (chevron), est à taper tel qu'il apparaît
- le texte entre crochets [] est facultatif
- le texte entre accolades {} contient les choix à faire.
- les choix sont séparées par | (pipe) ou par une virgule , commande -{a|b} veut dire commande -a ou commande -b mais pas commande -ab
- le texte entre chevrons <> doit être remplacé par le texte approprié
- les parenthèses (...), utilisées pour les paramètres tels que les noms de fichiers
- les crochets [] et les chevrons <> peuvent être combinés   [<nom_fichier>] - facultatif mais si vous les utilisez alors il faut écrire le nom du fichier
- les crochets [] et les accolades {} peuvent être combinés   [--option={a|b|c}]