Reservierte Worte
die Bash hat (wie eine Programmiersprache) reservierte Worte. Dies sind: { } case do done elif else esac fi for function if in select then time until while [[ ]] Im entsprechenden Kontext werden sie als reservierte Worte erkannt und bilden Wiederholungskonstrukte, Auswahl, Entscheidung und Funktion. Reservierte Worte werden erkannt: · als erstes Wort einer neuen Zeile · nach den Operatoren | || & && |& ( ) · als erstes Wort nach einem reservierten Wort (Ausnahme:case for in select [[ ) (nach case for oder select darf nur in als zweites Wort folgen) for var in · do print $var done
Reservierte Worte werden nicht erkannt:
· wenn sie als pattern in einem case stehen
· wenn sie als pattern in ( ) verwendet werden
· innerhalb eines here-document
cat << !!!
for var in *
do print $var
done
!!!
· nach [[ innerhalb eines compound command bis ]]
case for in
do|done [[ if -eq 0 ]]
x=case " "do;;
esac << !!!
while
!!!
· wenn Null oder mehr Zeichen des Wortes quoted werden
""while
"while"
\while