Next: Paramètres spéciaux: $?, $*,
Up: Scripts de shell avancés.
Previous: Scripts de shell avancés.
Table des matières
Les opérateurs spéciaux && et |
| permettent d'exécuter des fonctions en série, comme par exemple:
grep '^harry:' /etc/passwd |
| useradd harry
|
Le symbole | | signifie qu'il ne faut exécuter
le seconde commande que si la première retourne une erreur. Dans la
commande ci-dessus, grep émet un code de
sortie (1) si harry
ne se trouve pas parmi la liste des utilisateurs reprise dans le fichier
/etc/passwd. Ceci provoque alors l'exécution
de la commande useradd.
Une représentation alternative consiste en:
grep -v '^harry:' /etc/passwd &&
useradd harry
|
où l'option -v inverse
la logique de recherche des correspondances de grep
(ici, si grep ne trouve pas le nom harry,
il y a réussite et la commande useradd
doit être exécutée). Le symbole && a
donc la signification contraire de | |
(c'est-à-dire l'exécution de la seconde commande si la première réussit).
Les adeptes des scripts enchaînent souvent plusieurs commandes pour
créer une opération sous une forme succinte:
grep -v '^harry:' /etc/passwd && useradd harry |
| \
echo "`date`: useradd failed" » /var/log/mon_journal_special
|
Next: Paramètres spéciaux: $?, $*,
Up: Scripts de shell avancés.
Previous: Scripts de shell avancés.
Table des matières
1-01-2006