8.2 Programmstruktur
Ein AWK Programm besteht aus einer Folge von
pattern und
action-statements
und optionalen Definitionen von
functions.
Action statements sind in geschweifte { Klammern } eingeschlossen.
Actions sind i.d.R. Zuweisungen, bedingte Anweisungen, Schleifen und I/O-Anweisungen
pattern { action statements }
function name(parameter list) { statements }
BEGIN { action statements # BEGIN-action wird vor dem ersten Satz verarbeitet
}
pattern { action statements # wird bei zutreffendem Pattern verarbeitet
} # es kann mehrere derartigen Konstrukte
# geben
pattern # gibt alle Sätze aus die pattern erfüllen
{ action- statements # Bedingunglose Acction, verarbeitet alle Sätze.
} # Die Ausgabe muß durch eine print-Anweisung erfolgen
END { action statements # END-action wird nach dem letzten Satz verarbeitet
}
Achtung : Die öffnende geschweifte Klammer muß hinter der Bedingung in
derselben Zeile angegeben werden, da sonst eine bedingungslose
Aktion definiert wird.
Möglich ist aber \ am Zeilenende.
pattern \
{action } # diese action ist mit pattern verknüpft
Ein statement endet im Normallfall am Zeilenende (newline).
Zeilen die am Ende eines der Zeichen , , { , ? , : , && , oder || haben
bzw do oder case werden in der nächsten Zeile fortgesetzt.
Durch einen \ am Zeilenende kann in anderen Fällenl die Fortsetzung erzwungen
werden.
Mehrere Anweisungen können in eine Zeile geschrieben werden, wenn sie durch
; getrennt werden.