Script bash utilisant dialog
RésoluBonjour.
Je ne connais pas grand chose à la programmation script et après avoir consulté une bonne cinquantaine de pages et sites dédiés à "dialog" et ses exemples, je ne sais pas comment réaliser la fonction suivante.
Je pars sur la base de ce script pour réaliser un projet de menu de sélection d'applications locales :
#!/bin/bash cmd=(dialog --separate-output --checklist "Select options:" 22 76 16) options=(1 "Option 1" off # any option can be set to default to "on" 2 "Option 2" off 3 "Option 3" off 4 "Option 4" off) choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty) clear for choice in $choices do case $choice in 1) echo "First Option" ;; 2) echo "Second Option" ;; 3) echo "Third Option" ;; 4) echo "Fourth Option" ;; esac done
Il permet de sélectionner plusieurs items - comme je le souhaite.
Mais j'aimerais qu'en sélectionnant la "Première option" toutes les autres soient aussi sélectionnées, c'est-à dire-l'équivalent d'un "Tout sélectionner" en choisissant la seule "Première option" et uniquement celle-ci.
Est-ce possible ?
Merci d'avance pour votre aide.
- Script les visiteurs pdf
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Script vidéo youtube - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Télécharger dictionnaire larousse pdf gratuit - Télécharger - Dictionnaires & Langues
- Toutes les formules mathématiques pdf - Télécharger - Études & Formations
2 réponses
Bonjour,
Merci de partager tes futurs extraits de code comme expliqué dans ce tutoriel.
Tu peux te reporter à ce message, qui répond exactement à ta question.
#!/bin/bash onoff=off cmd=(dialog --output-fd 1 --separate-output --extra-button --extra-label "Select All" --cancel-label "Select None" --checklist "Select options:" 0 0 0) load-dialog () { options=( 1 "Option 1" $onoff 2 "Option 2" $onoff 3 "Option 3" $onoff 4 "Option 4" $onoff ) choices=$("${cmd[@]}" "${options[@]}") } load-dialog exit_code="$?" while [[ $exit_code -ne 0 ]]; do case $exit_code in 1) clear; onoff=off; load-dialog;; 3) clear; onoff=on; load-dialog;; esac exit_code="$?" done clear for choice in $choices do case $choice in 1) echo "First Option";; 2) echo "Second Option";; 3) echo "Third Option";; 4) echo "Fourth Option";; esac done
Bonne chance