Bash - Créer un menu avec retour automatique au menu principal

Résolu
xunil2003 Messages postés 765 Date d'inscription   Statut Membre Dernière intervention   -  
xunil2003 Messages postés 765 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai fait un menu et je voudrais que le menu dans le script revienne automatiquement au menu principal lorsqu'une case a été exécuté.

#!/bin/bash 
echo "
----- MENU PRINCIPAL -----

(1) Menu 1
(2) Menu 2
(3) Menu 3

(5) Q = Quitter
"
read choix_menu
case $choix_menu in
1) echo " ----- MENU 1 -----
<1> menu 1.1
<2> menu 1.2
<3> menu 1.3
<4> Q = Quitter
"
read choix_menu_1
echo
case $choix_menu_1 in
1) echo "vous avez selectionné le menu: 1.1" ;;
2) echo "vous avez selectionné le menu: 1.2" ;;
3) echo "vous avez selectionné le menu: 1.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 1";;
esac
;;

2) echo " ----- MENU 2 -----
<1> menu 2.1
<2> menu 2.2
<3> menu 2.3
<4> Q = Quitter
"
read choix_menu_2
echo
case $choix_menu_2 in
1) echo "vous avez selectionné le menu: 2.1" ;;
2) echo "vous avez selectionné le menu: 2.2" ;;
3) echo "vous avez selectionné le menu: 2.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 2";;
esac
;;
3) echo " ----- MENU 3 -----
<1> menu 3.1
<2> menu 3.2
<3> menu 3.3
<4> Q = Quitter
"
read choix_menu_3
echo
case $choix_menu_3 in
1) echo "vous avez selectionné le menu: 3.1" ;;
2) echo "vous avez selectionné le menu: 3.2" ;;
3) echo "vous avez selectionné le menu: 3.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 3";;
esac
;;

5 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi menu principal";;
esac
echo
exit 0


Comment dois-je faire ?

Merci.

A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

Inspires-toi de ce post qui y fait référence ;-)
0
xunil2003 Messages postés 765 Date d'inscription   Statut Membre Dernière intervention   14
 
Bonjour,

Merci, c'est bon ça marche, j'ai fait comme ceci :

#!/bin/bash 
while :
do
echo "

----- MENU PRINCIPAL -----

(1) Menu 1
(2) Menu 2
(3) Menu 3

(5) Q = Quitter
"

read choix_menu_pricipal
case $choix_menu_pricipal in
1) echo " ----- MENU 1 -----
<1> menu 1.1
<2> menu 1.2
<3> menu 1.3
<4> Q = Quitter
"
read choix_menu_1
echo
case $choix_menu_1 in
1) echo "vous avez selectionné le menu: 1.1" ;;
2) echo "vous avez selectionné le menu: 1.2" ;;
3) echo "vous avez selectionné le menu: 1.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 1";;
esac
;;

2) echo " ----- MENU 2 -----
<1> menu 2.1
<2> menu 2.2
<3> menu 2.3
<4> Q = Quitter
"
read choix_menu_2
echo
case $choix_menu_2 in
1) echo "vous avez selectionné le menu: 2.1" ;;
2) echo "vous avez selectionné le menu: 2.2" ;;
3) echo "vous avez selectionné le menu: 2.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 2";;
esac
;;
3) echo " ----- MENU 3 -----
<1> menu 3.1
<2> menu 3.2
<3> menu 3.3
<4> Q = Quitter
"
read choix_menu_3
echo
case $choix_menu_3 in
1) echo "vous avez selectionné le menu: 3.1" ;;
2) echo "vous avez selectionné le menu: 3.2" ;;
3) echo "vous avez selectionné le menu: 3.3" ;;
4 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi Menu 3";;
esac
;;

5 | Q | q ) echo "L'utilisateur $USER à quitter le programme" ; echo ; exit 0 ;;
*) echo "Erreur saisi menu principal";;
esac
done
echo
exit 0

Merci.
0