Exempel 4

Ett script som gör detsamma som i exempel 3, men använder programmet "awk".

Resultatet är fortfarande detsamma: scriptet skriver ut en fil, men ersätter alla rader som börjar med ordet "HEMLIGT" med raden "***BORTTAGET***".

    #! /bin/sh

    awk <"$1" ' { if (substr($0, 1, 7) == "HEMLIGT")
                     print "***BORTTAGET***";
                  else
                     print $0;
                }'

Den första raden, "#! /bin/sh", talar om att det är programmet /bin/sh som ska användas för att tolka scriptet.

awk är ett programspråk som är en korsning mellan C och BASIC, som framförallt är till för att bearbeta text på rad-för-rad-basis. Kodavsnittet i exemplet ovan körs en gång för varje textrad som awk läser från sin standard input. Inne i awk står $0 för den nuvarande raden av den inlästa texten.