11.7 Menüs mit select
Vor Kurzem haben wir uns damit beschäftigt, ein Menü mittels einer while-Schleife zu erstellen. Solch ein Menü lässt sich allerdings besser und gleichzeitig einfacher in ein Skript einbauen, wenn man die select-Anweisung verwendet. Der Aufbau von select gestaltet sich ähnlich wie der Aufbau der for-Schleife.
Listing 11.39 Aufbau von select
select VAR in WERT1 WERT2 WERT3
do
Anweisung1
Anweisung2
Anweisung3
...
done
Allerdings zeigt select ein Menü dieser Werte an und lässt den Anwender über eine Zahl eingeben, welchen Eintrag er auswählen möchte. Der ausgewählte Eintrag wird der Variable VAR zugewiesen und kann damit – wie auch bei der for-Schleife – für den Anweisungsblock verwendet werden.
Listing 11.40 select-Beispiel
#!/bin/bash
echo "Was haben Sie für ein Haustier?"
select HAUSTIER in Hund Katze Maus Fisch Guerteltier
do
echo "Sie haben also ein/eine(n) $HAUSTIER"
echo "Kann Ihr Haustier auch in Common-Lisp programmieren?"
done
Listing 11.41 Aufruf des Beispielskripts
$ ./haustier.sh
Was haben Sie für ein Haustier?
1) Hund
2) Katze
3) Maus
4) Fisch
5) Guerteltier
#? 1
Sie haben also ein/eine(n) Hund
Kann Ihr Haustier auch in Common-Lisp programmieren?
#? 2
Sie haben also ein/eine(n) Katze
Kann Ihr Haustier auch in Common-Lisp programmieren?
#? 3
Sie haben also ein/eine(n) Maus
Kann Ihr Haustier auch in Common-Lisp programmieren?
#? ^D
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.