Mit select kann man schnell und einfach ein kleines Menü zaubern. Sozusagen fast food für die Shellprogrammierung.
select zeigt in einer Endlosschleife eine Auswahl für den Benutzer an. Die Schleife verläßt man bei Bedarf mit break im Skript.
Die Struktur ähnelt sehr einer for-Schleife:
for name in ersteauswahl zweiteauswahl dritteauswahl...
do
# In $name steht der Text der Auswahl
done
#!/bin/sh
echo soll alles eventuell nicht formatiert werden\?
select name in ja nein "weiß nicht" "keine Hilfe!" "vielleicht" "ende"
do
echo ausgewählt wurde $name
if [ "$name" = ende ]
then
break
fi
done
echo fertig
Ein Beispieldialog könnte so aussehen, wenn der Benutzer nacheinander
die Werte 1, 4, und 6 eingibt:
soll alles eventuell nicht formatiert werden?
1) ja 3) weiß nicht 5) vielleicht
2) nein 4) keine Hilfe! 6) ende
#?
1
ausgewählt wurde ja
1) ja 3) weiß nicht 5) vielleicht
2) nein 4) keine Hilfe! 6) ende
#?
4
ausgewählt wurde keine Hilfe!
1) ja 3) weiß nicht 5) vielleicht
2) nein 4) keine Hilfe! 6) ende
#?
6
ausgewählt wurde ende
fertig
AnyWare@Wachtler.de