Következő: 15.8.7 VÁLTOZÓK, REKORDOK ÉS
Fel: 15.8 awk(1)
Előző: 15.8.5 OPCIÓK
  Index
Egy awk program minta-tevékenység utasítások és opcionális függvénydefiníciók
sorozata.
minta {tevékenység utasítások}
function név (paraméter lista){utasítások}
A gawk először beolvassa a programforrást a programfile-(ok)ból (ha meg van
adva ilyen), a -source argumentumából, vagy a parancssor első, nem-opció
argumentumából. A -f és a -source opciók többször használhatók a
parancssorban. A gawk ilyenkor úgy olvassa be a program szövegét, mintha
minden programfile és parancssori forrásszöveg össze volna kapcsolva
(konkatenálva). Ez jól használható awk függvénykönyvtárak kialakításához.
Így nincs szükség a függvények befoglalására minden olyan új programba, amely
használja azokat. Ez azt is lehetővé teszi, hogy a könyvtári függvényeket a
parancssori programokkal keverjük. Az AWKPATH környezeti változó előírja a -f
opcióval megnevezett fájlok keresési útvonalát. Ha ez a változó nem létezik,
az alapértelmezett keresési útvonal: ,,.:/usr/local/share/awk''. (A tényleges
könyvtár aszerint változhat, hogy a gawk-ot hogyan fordították és
installálták.) Amennyiben egy, -f opcióval átadott fájlnév ,,/'' karaktert
tartalmaz, nem hajtódik végre útvonal-keresés. A gawk a következő forgatókönyv
szeint hajtja végre a programokat. Először végrehajt minden, a -v opcióval
előírt változó-értékadást. Ezután egy belső formába fordítja a programot,
végrehajtja a BEGIN blokk(ok)ban levő kódot (ha van ilyen), majd beolvas
minden, az ARGV tömbben megadott fájlt. Ha nincs file megnevezve a
parancssorban, a gawk a standard bemenetet olvassa. Ha egy, a parancssorban
megadott fájlnév var=val formájú, akkor ezt a gawk változó-értékadásként
kezeli; a var változó megkapja a val értéket. (Ez azután történik, hogy
minden BEGIN block lefutott.) A parancssori értékadás ott a leghasznosabb,
ahol olyan változók értékeit adjuk meg dinamikusan, amelyek azt írják elő,
hogy a bemenetet milyen módon kell mezőkre és rekordokra bontani. Ez állapot
figyelésre is alkalmas, ha több futás is szükséges egyetlen adatfájlon. Ha az
ARGV egy bizonyos eleme üres értékű (,,''), a gawk átugorja azt. A gawk
ellenőrzi a bemenet minden rekordját, hogy eldöntse, illeszkedik-e az awk
program bármely mintájára. Minden olyan mintához rendelt tevékenység
végrehajtódik, amely mintára a rekord illeszkedik. A minták a programbeli
előfordulás sorrendjében kerülnek vizsgálat alá. Végül, miután minden
bemenetnek a végére ért, a gawk végrehajtja az END blokk(ok)ban lévő kódot (ha
van ilyen).
Következő: 15.8.7 VÁLTOZÓK, REKORDOK ÉS
Fel: 15.8 awk(1)
Előző: 15.8.5 OPCIÓK
  Index
1999-09-17