Sortie d'un case dans un autre
Bonjour à tous,
Alors le titre est pas forcément parlant, pourtant ce que je cherche à faire me parait pas compliqué en soit mais je galère un peu...
J'ai une structure case avec plusieurs choix, dont certains qui impliquent une nouvelle structure case imbriquée. (En gros une sortie de menu, qui amène à un autre etc...).
L'idée étant que quand je sors d'un menu je revienne au précédent (et si je suis au premier, alors je sors du script).
Mais mon soucis est que peu importe dans quel sous-niveau de mon menu je suis, si j'entre la valeur attendue pour sortir, je sors complètement du script.
Un extrait du script (vous occupez pas de certains mots, j'ai des fonctions définies ailleurs mais qui n'impactent pas mon problème actuel) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| until [ $choix_menu_dest -eq 0 ]
do
menu_dest
choix_menu_dest2=`echo $choix_menu_dest | tr A-Z a-z`
case $choix_menu_dest2 in
0)
echo
echo "Bonne journee !"
break
;;
all)
for i in `cat $dbm_remote $central_lognes $mail2print`
do
fic_dest=/mnt/$i/$fichier
copie
done
for i in `cat $workstations`
do
to_mount $i
fic_dest=/mnt/$i/$fichier
copie
to_unmount $i
done
continue
;;
1)
menu_central_mmo
choix_menu_central_mmo2=`echo $choix_menu_central_mmo | tr A-Z a-z`
case $choix_menu_central_mmo2 in
0)
break
;;
all)
for i in `cat $central_lognes`
do
fic_dest=/mnt/$i/$fichier
copie
done
continue
;; |
Alors j'ai pas fermé les "case esac" dans le code ci-dessus parce que je poste pas tout le script (plus de 900 lignes avec pas mal de répétitions j'vois pas trop l'intérêt :) ).
A mon avis mon problème se situe plutôt au niveau de mon break qui doit me sortir de la boucle initiale au lieu de sortir.
Merci de votre aide.