Tester le code retour d’une commande Code de retour:script shell

Objectif

Effectuer un traitement en fonction du code retour d’une commande.

Exemple

Tester si l’utilisateur christie est défini dans le fichier /etc/passwd.

Première méthode

En utilisant la structure de contrôle if :

$ if grep -q christie /etc/passwd ; then  
>    echo "L'utilisateur christie existe"  
> fi 

Ce qui peut également s’écrire comme ceci :

$ grep -q christie /etc/passwd  
$ if [[ $? eq 0 ]]        # ksh, bash (Bourne/Posix: utiliser [ ] ) 
> then  
>    echo "L'utilisateur christie existe"  
> fi 

(cf. chapitre Les bases de la programmation shell - Les structures de contrôle et Exécution de tests)

Deuxième méthode

En utilisant les opérateurs logiques du shell (&&,||) :

$ grep -q christie /etc/passwd && echo "L'utilisateur christie 
existe" 
L'utilisateur christie existe 

(cf. chapitre Les bases de la programmation shell - Les opérateurs du shell)

couv_EI7PRO.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Modèles de noms de fichiers
Suivant
Test d'égalité entre deux chaînes