Exécuter une action en fonction du choix dans un menu [Résolu] - Shell/Batch - Programmation
Marsh Posté le 15-01-2007 à 13:50:36
J'utilise dialog de debian, j'arrive à avoir mon interface graphique comme sur la capture.
Cepandant je n'arrive pas à faire lancer une application, je ne connais pas trop ce langage encore...
Problème: exécuter un programme en fonction du choix réalisé dans le menu
Voici mon code :
: ${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15
$DIALOG --clear --title "Suite de tests " \
--menu "
Binevenue dans cette suite tests:
Choisissez tests:" 20 51 7 \
"hdd" "test1" \
"cpu" "test2" \
"mem" "test3" \
"video" "test4" \
"reseau" "test5" \
"usb" "test6" 2> $tempfile
retval=$?
choice=`cat $tempfile`
case $retval in
0)
# c'est ici que j'aimerai suivant le test choisi, exécuter le programme correspondant
1)
echo "Cancel pressed.";;
255)
echo "ESC pressed.";;
esac
Marsh Posté le 17-01-2007 à 13:32:37
je ne pense pas que ça soit très compliqué mais ma syntaxe est incorrecte malgrè plusieurs essais.
Marsh Posté le 17-01-2007 à 14:27:23
Erreur de jeunesse, ne pas oublier les espaces !!
Voilà la solution :
case $retval in
0)
echo $choice
if [ "$choice" = "cpu" ]
then
echo "test"
elif [ "$choice" = "hdd" ]
Marsh Posté le 05-01-2007 à 11:29:09
Bonjour,
EDIT:
Problème: exécuter un programme en fonction du choix réalisé dans le menu
Le résultat souhaité est le suivant :
Merci pour toutes aides
Message édité par Trailx original le 17-01-2007 à 14:27:55