BESOIN D'AIDE URGENTE EN Unix

Fermé
Natacha - 29 mai 2005 à 00:45
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 29 mai 2005 à 06:18
Bonsoir à tous,

j'ai un immense problème en Unix , voilà j'aimerais faire revenir un ménu à l'écran ,après chaque fin de commande .

exemple voilà un ménu :

Choix Ménu de à faire revenir :

1.)_____________Entrez votre nom et prénoms.
2.)_____________Entrez deux nombres positifs .
3.)_____________Donnez votre date de naissance.
-.)_____________bla bla bla ....
7.)_____________quitter le progamme.



echo " Entrez votre choix "

En fait j'aimerais faire revenir ce ménu tant que l'on appui pas sur le choix Q (pour quitter le programme )
Voici ce que j'ai pu faire déjà :

#/bin/bash

echo "Entrez votre choix ,merci "
read choix

while choix in "cho1" "cho2" "cho3" ....
do
( le programme principal )
done
Merci encore de votre très appreciée aide .!

6 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
29 mai 2005 à 06:02
#! /bin/sh
opt1="Entrez votre nom et prénoms."
opt2="Entrez deux nombres positifs."
opt3="Donnez votre date de naissance."
opt4="bla bla bla ...."
opt5="Afficher le nombre des processus des utilisateurs"
opt6="Retourner le nombre des caractères dans un fichier"
opt7="quitter le progamme."
echo -e "\nBIENVENUE DANS LE MENU DE (VOS NOMS)\n"

echo -e "   Option Description\n"
PS3="
Entrez votre choix : "
while (true)
do
 select option in "$opt1" "$opt2" "$opt3" "$opt4" "$opt5" "$opt6" "$opt7"
  do
   case $option in
        $opt1) echo "Vous avez choisi l'option : $opt1"
                echo -e "\n"
                break ;;
        $opt2) echo "Vous avez choisi l'option : $opt2"
                echo -e "\n"
                break ;;
        $opt3) echo "Vous avez choisi l'option : $opt3"
                echo -e "\n"
                break ;;
        $opt4) echo "Vous avez choisi l'option : $opt4"
                echo -e "\n"
                break ;;
        $opt5) echo "Vous avez choisi l'option : $opt5"
                echo -e "\n"
                break ;;
        $opt6) echo "Vous avez choisi l'option : $opt6"
                echo -e "\n"
                break ;;
        $opt7) echo "Vous avez choisi l'option : $opt7"
                exit ;;
        *) echo "Option inexistante";
                exit ;;
   esac
  done
done
1
tuton Messages postés 94 Date d'inscription vendredi 26 novembre 2004 Statut Membre Dernière intervention 12 octobre 2005 5
29 mai 2005 à 00:52
je suis débutant en scripte mais si j'ai bien compris, ca devrait marcher...:
#!/bin/bash
p="0"
while [ "$p" = "0" ]
do
echo "Entrez votre choix ,merci "
read choix

while choix in "cho1" "cho2" "cho3" ....
do
(le programe principal avec p="1" quand la touche quand le choix de quitter est venu...)
done
done
Mais je suis pas sure d'avoir bien compris ton problème...
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
29 mai 2005 à 01:23
#! /bin/sh

opt1="Entrez votre nom et prénoms."
opt2="Entrez deux nombres positifs."
opt3="Donnez votre date de naissance."
opt4="bla bla bla ...."
opt5="Afficher le nombre des processus des utilisateurs"
opt6="Retourner le nombre des caractères dans un fichier"
opt7="quitter le progamme."
echo -e "\nBIENVENUE DANS LE MENU\n"

echo -e "   Option Description\n"

PS3="
Entrez votre choix : "

select option in "$opt1" "$opt2" "$opt3" "$opt4" "$opt5" "$opt6" "$opt7"

 do
   case $option in
        $opt1) echo "Vous avez choisi l'option : $opt1"
                continue ;;
        $opt2) echo "Vous avez choisi l'option : $opt2"
                continue ;;
        $opt3) echo "Vous avez choisi l'option : $opt3"
                continue ;;
        $opt4) echo "Vous avez choisi l'option : $opt4"
                continue ;;
        $opt5) echo "Vous avez choisi l'option : $opt5"
                continue ;;
        $opt6) echo "Vous avez choisi l'option : $opt6"
                continue ;;
        $opt7) echo "Vous avez choisi l'option : $opt7"
                break ;;
        *) echo "Option inexistante";
                break ;;
   esac
 done
0
Salut ,
c'est encore moi, Lami , ton ménu est superbe , mais il ne revient pas à l'écran après avoir terminé la commande que je veux entre l'option 1 et 6 !

Ce que je voudrais , c'est comment faire pour avoir une boucle qui va me permettre de faire réapparaître le ménu jusqu'à ce que je decide de quitter le programme .

Merci encore pour ton aide .
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
29 mai 2005 à 05:09
ok, je vais regarder.

En fait tu veux qu'après une option choisi il éxécute les instructions et ensuite il reaffiche le menu comme au début, si j'ai bien compris.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
29 mai 2005 à 06:18
Tu peut utiliser
while (true)
do
avant
echo -e "   Option Description\n"
PS3="


si tu veux avoir toujours l'affichage :
Entrez votre choix : 1
Vous avez choisi l'option : Entrez votre nom et prénoms.


   Option Description

1) Entrez votre nom et prénoms.
2) Entrez deux nombres positifs.
3) Donnez votre date de naissance.
4) bla bla bla ....
5) Afficher le nombre des processus des utilisateurs
6) Retourner le nombre des caractères dans un fichier
7) quitter le progamme.

Entrez votre choix : 2
Vous avez choisi l'option : Entrez deux nombres positifs.


   Option Description

1) Entrez votre nom et prénoms.
2) Entrez deux nombres positifs.
3) Donnez votre date de naissance.
4) bla bla bla ....
5) Afficher le nombre des processus des utilisateurs
6) Retourner le nombre des caractères dans un fichier
7) quitter le progamme.

Entrez votre choix : 
0