Bash for Schleife
Die for-Schleife
Standard For Schleife
Bei der for-Schleife wird bei jedem Durchlauf der Schleifenvariablen ein Wert aus einer angegebenen Liste zugewiesen; die Liste wird dabei von links nach rechts durchlaufen. Nach der letzten Wertzuweisung terminiert die for-Schleife.
- cat fussball
#!/bin/bash
for CLUB in fck bvb schalke bmg
do
echo $CLUB
done
- ./fussball
fck bvb schalke bmg
Darstellung als Struktogramm nach Nassi / Shneiderman:
For Schleife mit Stellungsparametern
Wird keine Liste angegeben, wird standardmäßig die Liste der Stellungsoperanden benutzt. Folgende Anweisungen sind äquivalent
#!/bin/bash
for LAUF in $*
do
echo $LAUF
done
Kurzform :
for LAUF
do
echo $LAUF
done
For Schleife mit Dateien aus dem aktuellen Verzeichnis
Der Stern würde durch alle Dateien des aktuellen Verzeichnisses ersetzt werden. Daraus folgt, dass der Name jeder Datei nacheinander in die Variable LAUF geschreiben wird. Die Anzahl der Schleifenläufe ist identisch mit der Anzahl von Dateien.
#!/bin/bash
for LAUF in *
do
echo $LAUF
done
Hier die Variante mit einem grossen K
#!/bin/bash
for LAUF in K*
do
echo $LAUF
done
For Schleife im C Stil
Mit Bash-Version 2.0.4 wurde die for-Schleife um eine an die Programmier-sprache C angelehnte Syntaxvariante erweitert:
for ((Initialisierung der Laufvaribale; Laufbedingung; Veränderung der Laufvariable)) do Kommando done
- cat foor
#!/bin/bash
for ((I=1;I<5;I++))
do
echo $I
done- ./foor
1 2 3 4
