• BASH > créer des menus ou des questionnaires. Bref, demander un choix

       

      echo -n "question ?" ; read permet de laisser le curseur sur la même ligne que la question

       

      RÉ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

      -n1 pour dire 1 seul caractère

      -p

      ""

      CHOIX variable 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

       

      $CHOIX variable contenant le réponse fournie par le clavier

       

      Sans respect de la casse

      if [ "${CHOIX,,}" == "toto" ] ; then

       

      $CHOIX pourra être toto, Toto, TOTO, ToTo, tOTo, etc.

       

      Réponse commençant par …

      if [ "$CHOIX" == "toto"* ] ; then

       

      Réponse finissant par …

      if [ "$CHOIX" == *"toto" ] ; then

       

      Réponse contenant …

      if [ "$CHOIX" == *"toto"* ] ; then

       

      RegEx

      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

 

Aucun commentaire

 

Laissez un commentaire