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.