logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
utilisateurs:david5647:tutos:bash-fonctions-liste-de-choix-pour-script-interactifs [24/03/2021 01:40]
David5647 [Choix parmi liste : complet]
utilisateurs:david5647:tutos:bash-fonctions-liste-de-choix-pour-script-interactifs [24/03/2021 17:23]
David5647 [Introduction]
Ligne 19: Ligne 19:
  
 Finalement, dans la dernière partie (exemple), vous trouverez un script compilant toutes les fonctions à des fins de démonstration. Finalement, dans la dernière partie (exemple), vous trouverez un script compilant toutes les fonctions à des fins de démonstration.
 +
 +**bonus**: pour dé-commenter les scripts:
 +<code user> cat script.sh | sed '/​^\s*#/​d'​ | sed '​s/#​.*$//'​ > script_sans commentaires.sh
 +</​code>​
  
 ===== Question binaire ===== ===== Question binaire =====
Ligne 219: Ligne 223:
 numberedMenu () { numberedMenu () {
  
-    # $1 = question to ask +    # $1 = Question à poser 
-    # $2 = elements separted by space +    # $2 = liste des éléments séparés par un espace 
-    # S3 (optionnal) = index of defaut element+    # S3 (optionnal) = index de l'​élément par défaut
  
     QUESTION=$1     QUESTION=$1
-    read -ra OPTIONS ​ <<<​ "​$2"​ # Keep options ​list+    read -ra OPTIONS ​ <<<​ "​$2"​ # Obtention de la liste de options
  
-    if [ -n "​$3"​ ]; then+    if [ -n "​$3"​ ]; then       # Si donné par l'​utilisateur (c-à-d variable non vide)
         DEFAULT=$3         DEFAULT=$3
-    else+    else                       # Sinon, valeur par défaut
         DEFAULT=1         DEFAULT=1
     fi     fi
Ligne 234: Ligne 238:
     # Show      # Show 
     printf "​\n"​     printf "​\n"​
-    for i in $(seq ${#​OPTIONS[@]});​ do +    for i in $(seq ${#​OPTIONS[@]});​ do                        # on compte le nombre d'​options 
-        printf ' ​   %3s %s\n' "​$i)"​ "​${OPTIONS[$(($i-1))]}"​+        printf ' ​   %3s %s\n' "​$i)"​ "​${OPTIONS[$(($i-1))]}" ​  # On affiche la position dans la liste et la valeur de l'​option
     done     done
     printf '​\n'​     printf '​\n'​
  
     # ask user     # ask user
-    printf "​\x1b[1;​32m$QUESTION\x1b[0m"​ +    printf "​\x1b[1;​32m$QUESTION\x1b[0m" ​         # Un peu de couleur (gras + vert) 
-    read -p " [$DEFAULT] : " -r INPUT +    read -p " [$DEFAULT] : " -r INPUT            #​ Demande valeur sans retour à la ligne 
-    INPUT=${INPUT:​-${DEFAULT}}+    INPUT=${INPUT:​-${DEFAULT}} ​                  # Substitut par $DEFAULT si réponse vide
  
     # Collect result     # Collect result
utilisateurs/david5647/tutos/bash-fonctions-liste-de-choix-pour-script-interactifs.txt · Dernière modification: 24/03/2021 17:53 par David5647

Pied de page des forums

Propulsé par FluxBB