-
BASH > créer des menus ou des questionnaires. Bref, demander un choix
echo -n "question ?" ; readpermet de laisser le curseur sur la même ligne que la questionRÉPONSE EN APPUYANT SUR UNE SEULE TOUCHE
Pour permettre une réponse en n’appuyant que sur une touche (et donc, sans la touche ENTRÉE) :
read -s -n1 -p "" CHOIX-s
-n1pour dire 1 seul caractère-p
""
CHOIXvariable qui sera utilisée pour analyser le choix (la lettre, chiffre ou symbole de la touche appuyée)ANALYSER LA RÉPONSE
if [ "$CHOIX" == "toto" ] ; then$CHOIXvariable contenant le réponse fournie par le clavierSans respect de la casse
if [ "${CHOIX,,}" == "toto" ] ; then$CHOIXpourra être toto, Toto, TOTO, ToTo, tOTo, etc.Réponse commençant par …
if [ "$CHOIX" == "toto"* ] ; thenRéponse finissant par …
if [ "$CHOIX" == *"toto" ] ; thenRéponse contenant …
if [ "$CHOIX" == *"toto"* ] ; thenRegEx
Les RegEx sont annoncées avec la tilde
~[[ $CHOIX =~ ^[0-9] ]]→ Si réponse commence par un chiffre[[ $CHOIX =~ [0-9][0-9][0-9] ]]→ Si réponse à 3 chiffres