#!/bin/sh # # Nutzung der mit igawk gelieferten Funktion rewind() zum nochmaligen # Durchlaufen des aktuellen Eingabe-Files von vorn # # 16.7.2006 # Das vorliegende File ist ein Shell-Skript mit der Endung .awk, so dass der # Editor Vim automatisch das Syntax Highlighting für AWK einschaltet. # Hauptbestandteil des Shell-Skriptes ist ein AWK-Programm, das zur Ausführung # an igawk übergeben wird. # Im ersten Durchlauf durch /etc/passwd ermitteln wir die UID des Nutzers, der # in der 10. Zeile der Datei steht. Im Durchlauf 2 ermitteln wir die ersten 5 # Nutzer, deren UID kleiner als die im ersten Durchlauf gefundene UID ist. igawk ' # rewind() einbinden @include rewind.awk BEGIN { durchlauf = 1 FS = ":" } durchlauf == 1 && FNR == 10 { uid = $3 printf("uid in Zeile 10: %d\n\n", uid) durchlauf = 2 rewind() } durchlauf == 2 && $3 < uid { print if (++anz == 5) { exit } } ' /etc/passwd