|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 23 ![]() |
Bonjour,
J'aimerais faire un menu dynamique en unix avec pour base un fichier qui aura les options, le nom de l'option et sa commande. exemple: 1;opt1;echo opt1 2;opt2;echo opt2 Merci |
|
|
00
|
|
|
#2 |
![]() Inscription : mars 2004 Messages : 1 298 ![]() |
c'est bien !
mais c'est quoi la question ? |
|
|
00
|
|
|
#3 |
![]() Inscription : juillet 2004 Messages : 2 573 ![]() |
Bonjour
A ma connaisance et surtout en script shell, je ne pense pas qu'il soit possible de développer un menu dynamique. Tu peux créer un menu tout simple comme tu le ferais en batch sous DOS. J'ai dans mes favoris un petit exemple de menu (pas dynamique) en shell => Shell programming and simple menus. ++
__________________
.Olivier |
|
|
00
|
|
|
#4 | |
|
Membre du Club
![]() Inscription : novembre 2006 Messages : 80 ![]() |
Citation:
Désolé, mais je ne vois pas qu'est ce que tu veux dire par un menu dynamique, est ce genre un menu dont le contenu pourra etre lu à partir d'un fichier?? |
|
|
|
00
|
|
|
#5 | |||
|
Membre expérimenté
![]() Inscription : mars 2007 Messages : 469 ![]() |
Citation:
Je pense que ce qui suit correspond à ta demande Contenu du fichier menu.cfg : 1;Liste des fichiers du répertoire courant;ls -l 2;Nom du répertoire courant;echo \$PWD MenuDynamic.sh : Code :
$ MenuDynamic.sh 1 Liste des fichiers du répertoire courant 2 Nom du répertoire courant Votre choix (Abandon : <Ctrl-c>) : 2 echo $PWD /home/HP_Administrateur |
|||
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() David Inscription : avril 2009 Messages : 26 ![]() |
Bonjour,
La commande select permet de créer des menus. En lui passant, comme paramètres la première colonne d'un fichier, affichera chaque option disponible qui seront numéroté. 2 colonnes suffissent dans le fichier "listes.lst" car la numérotation se fera via la commande select. # 2 - Declaration de variables # ---------------------------- LISTE_OPTIONS="$CHEMIN/listes.lst" PS3=" Q) Quitter Veuillez entrer le numero : " # 3 - Menu de connexion # --------------------- clear echo " Menu" echo " " select CHOIX in $(cat $LISTE_OPTIONS | cut -d";" -f1) do case $REPLY in Q|q) exit ;; *) $(grep $CHOIX | cut -d";" -f2) ;; esac done |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com