goto ähnlicher befehl bei shellprogrammierung
stefan
- sonstiges
hi
kennt sich jemand mit shellprogrammierung aus?
Habe folgendes Prog:
read test
if test "$test" = "1" ;
then
echo bla...
elif test "$test" = "2" ;
then
echo blub...
else
echo test...
fi
read x
Das Problem ist, wenn die Eingabe weder 1 noch 2 ist soll er wieder zu der read test springen und nochmal den Wert einlesen, um die Prüfung zu wiederholen. Leider gibt es kein goto.
jemand ne andere Idee??
Danke
Hallo,
read test
if test "$test" = "1" ;
then
echo bla...
elif test "$test" = "2" ;
then
echo blub...
else
echo test...
fi
read xDas Problem ist, wenn die Eingabe weder 1 noch 2 ist soll er wieder zu der read test springen und nochmal den Wert einlesen, um die Prüfung zu wiederholen. Leider gibt es kein goto.
jemand ne andere Idee??
Endlosschleife drumherum und mit break verlassen, wenn Eingabe korrekt ist, sollte funktionieren. Also in etwas so (ohne Gewähr auf korrekte Syntax, da ich derzeit kein UNIX-System in der Nähe habe):
while [ true ]
do
read test
if test "$test" = "1" ;
then
echo bla...
break
elif test "$test" = "2" ;
then
echo blub...
break
else
echo test...
fi
done
read x
Viele Grüße
Frank
Hallo,
Leider gibt es kein goto.
jemand ne andere Idee??
Ja. Da nimmt man eine der Schleifen-Anweisungen while oder until.
http://www.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-7.html
viele Grüße
Axel
vielen dank für die hilfe