Aufruf und Optionen
Im einfachsten Fall ist das auszuführende Skript so kurz, daß man es
gleich mit auf der Kommandozeile angeben kann:awk [Optionen] [--] Programmtext Datei ... Folgendes Beispiel gibt Namen der Benutzer und das jeweilige Home-Verzeichnisaus:
awk -F: '{print $5, $6}' /etc/passwd
Dabei gibt die Option
-F:
an, daß der Doppelpunkt als Trennzeichen
zwischen Feldern aufgefaßt werden soll. Das eigentliche awk-Programm
besteht aus
{print $1, $6}
Das eigentliche awk-Programm muss vor der Auswertung durch die Shell
geschützt werden, deshalb die Einbettung in einfache Hochkommata.
Die geschweiften Klammern gehören zum Programm und sind auch wichtig,
wie wir später noch sehen werden.
Im awk werden Anweisungen, ähnlich der Shell, durch Semikolon getrennt. Damit
kann man auch mehrere Anweisungen auf der Kommandozeile unterbringen. Trotzdem
ist die Grenze der Übersichtlichkeit schnell erreicht und man schreibt das
awk-Skript lieber in eine Datei. Der Programmaufruf sieht dann so
aus:
awk [Optionen] -f Programmdatei [--] Datei ...
Üblicherweise wird das Ergebnis eines awk-Aufrufs auf die Standardausgabe
(was meistens der Bildschirm ist) geschrieben. Ist das nicht gewünscht,
so muß die Ausgabe auf eine Ergebnisdatei umgeleitet oder
in ein weiteres Programm gepipt werden.
Zur Demonstration wird im folgenden Programm das erste Feld der Passwortdatei
ausgeben (der Feldseparator ist der Doppelpunkt), wobei die Zeilen zusätzlich
numeriert werden:
awk -F : '{print NR,$1}' /etc/passwd
1 root
2 bin
3 daemon
4 lp
5 news
...
|