Instructions de Contrôle |
Écrit par VieuxProf
|
01-01-1999 |
if condition; then liste1; else liste2; fi |
if test expression; then ...; fi
if [ expression ]; then ...; fi |
case expression in
modele1) liste de commandes 1 ;;
modele2) liste de commandes 2 ;;
( ... )
esac |
while condition; do liste ; done |
until condition; do liste ; done |
for mavariable in listeDeValeurs; do liste; done |
- Un code retour (exit status) est émis par toute commande UNIX ou script vers le shell après exécution. Les valeurs autorisées vont de 0 à 255. La variable prédéfinie ? est initialisée avec le code retour de la dernière commande exécutée.
0 |
exécution réussie ou valeur logique VRAI |
autre chiffre |
erreur d'exécution ou valeur logique FAUX |
- L'opérateur ! (qui signifie NON) permet d'inverser le code retour de la commande qu'il précède.
if condition
then
liste de commandes pour code retour de condition=0
else
liste de commandes pour code retour de condition!=0
fi |
commande1 && commande2
if commande1; then commande2; fi
(commande2 s'exécute si commande1 renvoie 0) |
commande1 || commande2
if commande1; then : ; else commande2; fi
(commande2 s'exécute si commande1 ne renvoie pas 0) |
La commande test n'affiche rien. Elle renvoie 0 si expression est VRAI, 1 si expression est FAUX.
if test expression; then ...; fi |
if [ expression ]; then ...; fi |
Test d'un attribut de fichier |
-d monfichier |
VRAI si monfichier existe et que c'est un répertoire |
-e monfichier |
VRAI si monfichier existe |
-f monfichier |
VRAI si monfichier existe et qu'il est régulier (ordinaire) |
-L monfichier |
VRAI si monfichier existe et que c'est un lien |
-r monfichier |
VRAI si monfichier existe et qu'il est acessible en lecture |
-s monfichier |
VRAI si monfichier existe et que sa taille est différente de 0 |
-w monfichier |
VRAI si monfichier existe et qu'il est accessible en écriture |
-x monfichier |
VRAI si monfichier existe et qu'il est exécutable |
Comparaison de chaînes de caractères |
-z machaine |
VRAI si la longueur de machaine est 0 |
-n machaine |
VRAI si la longueur de machaine est différente de 0 |
machaine1 = machaine2 |
VRAI si machaine1 et machaine2 sont identiques |
machaine1 != machaine2 |
VRAI si machaine1 et machaine2 sont différentes |
Comparaison de nombres |
arg1 -eq arg2 |
VRAI si arg1=arg2 |
arg1 -ne arg2 |
VRAI si arg1!=arg2 |
arg1 -lt arg2 |
VRAI si arg1<arg2 |
arg1 -le arg2 |
VRAI si arg1<=arg2 |
arg1 -gt arg2 |
VRAI si arg1>arg2 |
arg1 -ge arg2 |
VRAI si arg1>=arg2 |
Opérateurs logiques |
!expression |
VRAI si expression est fausse |
expression1 -a expression2 |
VRAI si expression1 ET expression2 sont vraies |
expression1 -o expression2 |
VRAI si expression1 OU expression2 est vraie |
case expression in
modele1) liste de commandes 1 ;;
modele2) liste de commandes 2 ;;
( ... )
esac |
* |
suite qcq de caractères |
? |
caractère qcq |
[liste] |
caractère qcq de la liste |
| |
ou bien |
while condition # TANT QUE ...
do
liste de commandes exécutées tant que code retour=0
done |
until condition # JUSQU'A CE QUE ...
do
liste de commandes exécutées jusqu'à ce que code retour=0
done |
for mavariable in listeDeValeurs # POUR TELLES VALEURS, FAIRE ...
do
liste de commandes
done |
while condition
do
if ...; then
continue # interrompt la boucle while et revient au début
fi
if ...; then
break # interrompt la boucle while et passe après done
fi
done |
|
Dernière mise à jour : ( 02-02-2008 )
|