20.7 Arbeiten mit häufigen Ablaufkonstrukten

Zur Steuerung des Ablaufs Ihres Skripts verfügt eine Shell über while-, if-, for- und case-Konstrukte.

20.7.1 Das Steuerungskommando "if"

Das Kommando if wird verwendet, um Ausdrücke zu prüfen. Beispielsweise testet der folgende Code, ob es sich beim aktuellen Benutzer um Tux handelt:

if test $USER = "tux" then
  echo "Hello Tux."
else
  echo "You are not Tux."
fi

Der Testausdruck kann so komplex oder einfach wie möglich sein. Der folgende Ausdruck prüft, ob die Datei foo.txt existiert:

if test -e /tmp/foo.txt 
then
  echo "Found foo.txt"
fi

Weitere nützliche Ausdrücke finden Sie unter http://www.cyberciti.biz/nixcraft/linux/docs/uniqlinuxfeatures/lsst/ch03sec02.html.

20.7.2 Erstellen von Schleifen mit dem Kommando "for"

Mithilfe der for-Schleife können Sie Kommandos an einer Liste von Einträgen ausführen. Beispielsweise gibt der folgende Code einige Informationen über PNG-Dateien im aktuellen Verzeichnis aus:

for i in *.png; do
 ls -l $i
done