|
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 )
|