Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
hnr
Beitrag
von hnr » 06.08.2006 14:58:31
Hallo,
ich versuche ein Script zu schreiben, bei dem ich durch die Menüauswahl navigieren kann und auch bestimmte codezeilen ausführen kann. Mit dialog --menu kann man menüpunkte setzen...weiter weiß ich es aber nicht mehr
. Folgendes Beispiel versuchte ich nach zu vollziehen, was mir zwar gelungen ist aber nicht weiter hilft.
Code: Alles auswählen
#! /bin/sh
#====================================================================================================
# dialmenu: Menue-Auswahl
#====================================================================================================
#----------------------------------------------------------------------------------------------------
# menu: Auswahl eines Menuepunktes
#----------------------------------------------------------------------------------------------------
dialog --clear --title "Menueauswahl"\
--menu "was soll ich tun?" 12 40 4 \
"D" "Drucken" \
"S" "Suchen" \
"E" "Ersetzen" \
"N" "Nummerieren" 2>/tmp/dialmenu.$$
auswahl=$?
#----------------------------------------------------------------------------------------------------
# Ausgeben des vom Benutzer gewaehlten Menupunktes
#----------------------------------------------------------------------------------------------------
if [ $auswahl = 0 ]; then # wurde Dialog mit Ok beendet?
menuepkt=$(cat /tmp/dialmenu.$$)
dialog --clear --msgbox "Du hast den Menuepunkt $menuepkt gewaehlt" 7 50
elif [ $auswahl = 1 ]; then
dialog --clear --msgbox "Du hast keinen Menuepunkt gewaehlt (Cancel)" 7 50
else
dialog --clear --msgbox "Du hast keinen Menuepunkt gewaehlt (Esc)" 7 50
fi
rm /tmp/dialmenu.$$
#---------------------------------------------------------------------------------------------------
# alten Hintergrund wiederherstellen
#---------------------------------------------------------------------------------------------------
setterm -default
setterm -clear
Ich wünschte mir ich könnte tatsächlich suchen und nicht eine alberne Meldung bekommen "Du hast den Menuepunkt "S" gewaehlt
.
Wie sollte dann der Code aussehen, also mit case habe ich versucht aber es funtzt net...
mfg
Zuletzt geändert von hnr am 12.08.2006 12:55:47, insgesamt 1-mal geändert.
-
Richard-18
- Beiträge: 150
- Registriert: 24.10.2005 02:15:16
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Gotha
-
Kontaktdaten:
Beitrag
von Richard-18 » 06.08.2006 17:38:24
Hi,
Am einfachsten war es für mich über die bsp´s in ---> /usr/share/doc/dialog.
In diesem ordner findest du beispiele und an denn kannst du denke ich einiges ableiten.
Software is like sex. It's better when it's free.
Linus Torvald
-
hnr
Beitrag
von hnr » 07.08.2006 18:06:15
Die Docs helfen mir nicht weiter, vielleicht bin ich einfach mal zu blöd für
.
Die Beispiele sind genau das was ich ober geschrieben habe. Ich möchte zum beispiel, wenn ich Suchen eingeben, ein weitere Dialog ausführen lassen, wo ich dann aussuchen kann was ich haben will.
Ein " Sie habe Suchen gedrückt" hilft mir nicht weiter und ist so gesehen nutzlos...
mfg
-
FANA
- Beiträge: 482
- Registriert: 30.03.2005 17:50:55
Beitrag
von FANA » 07.08.2006 23:01:33
Hi VINIc,
hab dir mal was hochgeladen:
http://www.2flub.org/~fana/sshtui.tgz
Entpacken mit:
Ausführen mit:
Falls du eine Meldung bekommst, dass etwas nicht installiert ist,
kommentiere einfach folgende Zeile in der
sshTUI.sh aus:
(müsste Zeile 65 sein)
Das ist ein Script, das ich mal für ein Router System basierend auf Woody erstellt habe.
Kann sein, dass nicht alles bei dir funktioniert, aber der Aufbau sollte erkennbar sein...
Hoffe, es hilft dir etwas weiter
-
hnr
Beitrag
von hnr » 11.08.2006 07:08:09
Danke schön!,
werde mir gleich angucken, sobald ich wieder zuhause bin
mfg
-
hnr
Beitrag
von hnr » 12.08.2006 12:55:15
Boah! Schwere Kost... aber eigentlich auch einfach...
Hast du es selber geschrieben??? Sieht sehr ordentlich aus. Ich werde das einstudieren und in mein Projekt einarbeiten. Danach gebe ich mal meine Arbeit frei
Bis die Tage! und danke für den tollen Code
mfg