Awk (gawk) - pattern scanning and processing language

teejuht
 
1.
Sissejuhatus
2.
Näiteid
 
1. Sissejuhatus

awk on selline scrpiti keel (selles mõttes et tal pole kompilaatorit mis võimaldab nagu pealkiri ütleb: otsida sarnasusi ja andmeid töödeda. Teda kasutatakse palju süsteemi administreerimise skritptide kirjutamisel. Mõned käsud on ehk sarnased perlile aga perl on suur, tema väikene :)
 

2. Näiteid

Tegeleme andmefailiga 'andmefail' mille sisu on järgmine:

12 tartu
2 parnu
3 tartu
4 puudel
 

1. Olgu tarvis sellest andmefailist kuvada sõna 'tartu't sisaldavad read

cat andmefail | awk '/tartu/ {print}'

2. Kuvame vaid teise tulba

cat andmefail | awk '{print $2}'

3. Kuvame tulbad vastupidises jarjekorras

cat andmefail | awk '{print $2 $1}'

4. kasutades väikest programmi sort abi

cat andmefail | awk '{print $2 "\t" $1}' | sort +0

kus \t on tabulaator ja sort +0 jarjestab oma inputi 0-nda st vasakpoolseima tulba järgi käsitledes sümboleid tähemärkidena. (kui
anda sort +0n siis käsitleks ta arvudena)

5. kuva need read mille teises tulbas sisaldub "t"  taht

cat andmefail | awk '$2 ~ /t/ {print $1 $2}'

6. jarjestame kataloogi sisu failide suuruse jarjekorras ning kuvame vaid suuruse ja nime

ls -lA |  awk '{print $5 "\t" $9}' | sort +0n

tasub proovida ka seda

ls -lA |  awk '{print $5 "\t" $9}' | sort +0
 

gggg