next up previous contents Next: Usage des fonctions: le Up: Les scripts du shell. Previous: Boucles sur des motifs   Table des matières  

8.6 L'instruction case.

L'instruction case peut réduire un programme potentiellement complexe. Voici un exemple d'application:

#!/bin/sh 

case $1 in

        --test|-t)

                echo "you used the --test option"

                exit 0

        ;;

        --help|-h)

                echo "Usage:"

                echo "      myprog.sh [--test|--help|--version]"

                exit 0

        ;;

        --version|-v)

                echo "myprog.sh version 0.0.1"

                exit 0

        ;;

        -*)

                echo "No such option $1"

                echo "Usage:"

                echo "      myprog.sh [--test|--help|--version]"

                exit 1

        ;;

esac

 

echo "You type \"$1\" "on the command-line" 



Vous noterez que nous essayons de traiter le premier argument d'un programme. Etant donné qu'il y a plusieurs options, l'usage d'if conduirait à un programme plutôt long. L'instruction case permet de spécifier plusieurs blocs d'instructions en fonction de la valeur d'une variable. Notez le signe ;; qui sépare chaque bloc d'instructions. Les chaînes avant le motif ) sont des correspondances de motifs d'englobement. La première correspondance réussie entraîne l'exécution de son bloc. Le symbole | permet d'entrer plusieurs motifs d'englobement.


next up previous contents Next: Usage des fonctions: le Up: Les scripts du shell. Previous: Boucles sur des motifs   Table des matières  
1-01-2006