case ... in ... esac
La commande case permet d'aiguiller un programme suivant un choix
multiple.
La syntaxe général des cas de comparaison est :
( modèle | modèle ... ) liste des commandes ;;
La première parenthèse est optionelle sauf si vous souhaitez
utiliser une substitution du type $(...)
| | |
sert de séparateur de modèle |
| ;; |
termine le traitement en cas de succés |
| *) |
correspond au cas par défaut |
while ((1))
do read reponse?"Donnez votre réponse (O/N): "
case $reponse in
O|o|Y|y) echo "la réponse est favorable"
flg=1
break ;;
N|n) echo "la réponse est défavorable"
flg=0
break ;;
*) echo "Je n'ai pas compris la réponse"
echo "recommencez !" ;;
esac
done
echo "Sortie avec réponse=$reponse et flg=$flg"