tech:script_shell_interactif_avec_boites_de_dialogue_dialog_boxes_-_whiptail
Script shell interactif avec boîtes de dialogue (dialog boxes) - Whiptail
Voir :
Voir aussi :
- dialog
Whiptail est inclus par défaut dans Debian
Exemple de script
dialogBoxes.sh
#! /bin/bash set -o nounset WHIPTAIL='env LANG=C whiptail' #exec 2> /tmp/dlg-log-"$(date +%Y%m%d%H%M)".err menu1() { $WHIPTAIL --title "NODE" --menu "Choose a hostname" 25 78 16 \ srv-1 "" \ srv-2 "" \ MAIN_MENU "" \ 2>/tmp/dlg-choix } menu2() { $WHIPTAIL --title "APP ON/OFF" --menu "On / Off" 25 78 16 \ 1_App_On "" \ 2_App_Off "" \ MAIN_MENU "" \ 2>/tmp/dlg-choix } main_menu() { $WHIPTAIL --title "MAIN MENU" --menu "Select an option" 25 78 16 \ 1_Node "" \ 2_App_Activation "" \ 2>/tmp/dlg-choix } sortir() { rm -f /tmp/dlg-choix echo -e "\\n\\tBye !" exit 0 } test_menu_option() { CHOIX=$(cat /tmp/dlg-choix) rm -f /tmp/dlg-choix case $CHOIX in 1_Node) menu1 ;; 2_App_Activation) menu2 ;; 1_App_On) echo "App_On ${HOST_SRV:-x}" sortir ;; 2_App_Off) echo "App_Off ${HOST_SRV:-x}" sortir ;; MAIN_MENU) main_menu ;; srv-1) HOST_SRV=1 menu2 ;; srv-2) HOST_SRV=2 menu2 ;; "") echo "Cancelled by user" sortir ;; *) echo -e "Option unknown : \"${CHOIX}\"" exit 2 ;; esac } main_menu while true do test_menu_option done
Dialog
Exemples
(pv -n image.iso | dd of=/dev/sdb bs=1M && sync) 2>&1 | dialog --gauge "la commande dd est en cours d'exécution, merci de patienter..." 10 70 0
tech/script_shell_interactif_avec_boites_de_dialogue_dialog_boxes_-_whiptail.txt · Dernière modification : de Jean-Baptiste
