8.7 Control Statements

  statement      Bei allen Steueranweisungen kann als
                 statement nur eine Anweisung geschrieben
                 werden

 { statement_1	Mehrere Anweisungen können verwendet werden,
   statement_2	wenn sie mit einer geschweiften Klammer zu
   statement_3	einem Block zusammengefaßt werden.
 }

  { statement_1 ; statement_2 ; statement_3 }   Mehrere An-
 		weisungen in einer Zeile müssen geklammert
                 und durch Semikolon getrennt sein.


break
continue
if (condition) statement [ else statement ]
while (condition) statement
do statement while (condition)
for (expr1; expr2; expr3) statement
for (var in array) statement
delete array[index]
delete array
exit [ expression ]
 


while


8.7.1 Steueranweisung Schleife vorzeitig verlassen

while
 

break continue

8.7.2 Steueranweisung if

while
  if (condition)  action   [ [;] else action]

 
Beispiel : END { if (anzahl > 0 ) printf " Anzahl Dateien %6d\n", anzahl else printf "Leider keine Dateien gefunden\n" } { if (pos == 1) # erster Posten kopf() # Funktion Kopf aufrufen }


8.7.3 Steueranweisungen while

while
 

8.7.4 Steueranweisungen for

for
 

for(expr1; expr2;expr3) statement;

Summe der Zahlen von 1 bis 10
awk ' END {for (i=1; i<= 10; i++) { summe += i } END { printf "Summe der Zahlen von 1 bis 10 ist %d\n", summe } ' /dev/null
  • Summe muß in END-Block gebildet werden, da von /dev/null gelesen wird. Somit kommt sofort EOF und der Hauptblock wird nicht durchgeführt.
  • zweiter END-Block nicht erforderlich