Les opérateurs du shell Opérateur

Ces opérateurs permettent d’exécuter ou non une commande en fonction du code de retour d’une autre commande. L’évaluation est faite de gauche à droite.

Il ne faut pas confondre les opérateurs du shell (&& et ||) qui effectuent une opération logique entre deux commandes Unix avec les opérateurs de la commande [[ ]] (&& et ||) qui sont internes à cette dernière.

Opérateur

Signification

&&

ET logique

||

OU logique

!

Négation (posix, ksh93, bash. Non documenté en ksh88 mais fonctionne)

1. Évaluation de l’opérateur &&

Syntaxe

commande1 && commande2 
  • La deuxième commande est exécutée uniquement si la première commande renvoie un code vrai.

  • L’expression globale est vraie si les deux commandes renvoient vrai.

Exemples

Le répertoire /tmp/svg n’existe pas, la commande cd n’est donc pas exécutée :

$ ls -d /tmp/svg 
/tmp/svg: No such file or directory 
$ pwd 
/export/home/christie 
$ [[ -d /tmp/svg ]] && cd /tmp/svg 
$ echo $?        # Code de la commande [[ ]] 
1 
$ pwd 
/export/home/christie 

Le répertoire /tmp/svg existe, la commande cd est donc exécutée :

$ mkdir /tmp/svg 
$ [[ -d /tmp/svg ]] && cd /tmp/svg 
$ pwd 
/tmp/svg 
$ 

Ces actions peuvent également être implémentées...

couv_EI7PRO.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Exécution de tests
Suivant
L'arithmétique