Next Previous Contents >

6. Les caractères d'échappement

>Parce qu'il existe en shell des mécanismes de substitution, il existe nécessairement des mécanismes permettant d'échapper à ces substitutions : les caractères d'échappement. En effet, comment faites-vous pour afficher `*.?' grâce à la commande `echo', sans utiliser de caractères d'échappement ? C'est impossible, car `echo *.?' liste l'ensemble des fichiers du répertoire courant dont le nom se termine par un point suivi d'un caractère quelconque... `*' et `?' sont en effet deux caractères jokers. Les caractères d'échappement sont au nombre de trois : >
  • >Le caractère `\' protège un et un seul caractère : celui qui le suit immédiatement. Ainsi, `echo \*.\?' affiche `*.?', le caractère `\' empêchant le shell d'interpréter les caractères jokers. >
  • >Les délimiteurs `''' protègent tous les caractères qu'ils encadrent, empêchant le shell d'y effectuer une quelconque substitution. `echo '*.?'' affiche donc également `*.?'. >
  • >Les délimiteurs `""' protègent tous les caractères qu'ils encadrent, sauf `\', `$' et ``'. Ainsi, `echo "*.?"' affiche `*.?', mais `echo "$(who | wc -l)"' affiche le nombre d'utilisateurs connectés à votre système. >
> > Next Previous Contents