E faʻapefea ona tusia AWK Commands ma Scripts

Poloaiga, syntax, ma faataitaiga

O le faʻatonuga o se auala mamana mo le faʻapipiʻiina poʻo le suʻeina o faila o faila-aemaise lava faila faila o loʻo faʻatulaga e laina (laina) ma koluma.

E mafai ona taʻavale faʻasalalauga faigofie i laina laina . O galuega e sili atu ona faigata e tatau ona tusia e avea ma polokalama faʻafefefe (tusi e taʻua o awk script) i se faila.

O le faatulagaga masani o se poloaiga mataʻutia e pei o lenei:

faʻailoga 'mamanu {action}' faila-faila> faila-faila

O lona uiga: ave laina taʻitasi o faila faila; afai o le laina o loʻo i ai le mamanu e faʻaaoga le gaioiga i le laina ma tusi laina laina i le faila-faila. Afai e leai se mamanu, e faʻaaogaina le gaioiga i laina uma. Faataitaiga:

'' lolomi le $ 5} 'table1.txt> output1.txt

O lenei faʻamatalaga e ave ai le elemene o le laina 5 o laina taitasi ma tusia ai o se laina i le faila faila "output.txt". O le fesuiaiga '$ 4' e faasino i le koluma lona lua. E faʻapea foi ona mafai ona e mauaina le muamua, lua, ma le tolu koluma, ma le $ 1, $ 2, $ 3, ma isi mea faapena. O koluma e le mafai ona vavaeeseina e avanoa ma nusipepa (lea e taʻua o le paepae papaʻe). O lea, afai o le faila faila "table1.txt" o loʻo i ai laina nei:

1, Justin Timberlake, Ulutala 545, Tau $ 7.30 2, Taylor Swift, Ulutala 723, Tau $ 7.90 3, Mick Jagger, Ulutala 610, Tau $ 7.90 4, Lady Gaga, Ulutala 118, Tau $ 7.30 5, Johnny Cash, Ulutala 482, Tau $ 6.50 6, Elvis Presley, Ulutala 335, Tau $ 7.30 7, John Lennon, Ulutala 271, Tau $ 7.90 8, Michael Jackson, Ulutala 373, Tau $ 5.50

Ona tuʻuina lea e le poloaiga laina nei i le faila faila "output1.txt":

545, 723, 610, 118, 482, 335, 271, 373,

Afai ole vavaeeseina o le koluma o se isi mea e ese mai avanoa poʻo nusipepa, e pei o se mimiti, e mafai ona e faʻamaonia i totonu o le faʻamatalaga faʻamatalaga pei ona taua i lalo:

awk -F, '{print $ 3}' table1.txt> output1.txt

O lenei mea o le a filifilia ai le elemene mai le laina 3 o laina taʻitasi pe'ā fai e vaʻaia ia koluma e se paʻu. O le mea lea, o le galuega faatino, i lenei tulaga, o le:

Ulutala 545 Ulutala 723 Igoa 610 Igoa 118 Ulutala 482 Ulutala 335 Autu 271 Ulutala 373

O le lisi o faʻamatalaga i totonu o puipui faʻamau ('{', '' ') e taʻua o le poloka. Afai e te tuʻuina se faʻamatalaga faʻapitoa i luma o se poloka, o le faʻamatalaga i totonu o le poloka o le a naʻo le faʻamasinoga pe afai e saʻo le tulaga.

'$ 7 ==' $ $ 7.30 '{print $ 3}' table1.txt

I lenei tulaga, o le aiaiga e $ 7 == "\ $ 7.30", o lona uiga o le elemene i le koluma 7 e tutusa ma le $ 7.30. O le taamilosaga i luma o le faʻasologa o le tala e faʻaaogaina e puipuia ai le polokalama mai le faʻaliliuina o le $ 7 o se fesuiaiga ae ia ave faʻamaonia le dollar i le mea moni.

O lea la, o lenei faʻamatalaga mataʻutia o loʻo lolomiina ai le elemene i le laina lona tolu o laina taʻitasi o loʻo i ai se "$ 7.30" i le laina 7.

E mafai foi ona e faʻaaoga faʻaaliga masani e pei o le tulaga. Faataitaiga:

awk '/ 30 / {print $ 3}' table1.txt

O le manoa i le va o slashes e lua ("/") o le faʻaaliga masani lea. I lenei tulaga, ua na o le manoa "30." O lona uiga afai o se laina e aofia ai le manoa "30", o le faiga e lolomi ai le elemene i le laina lona tolu o lena laina. O le gaioiga i le faʻataʻitaʻiga o loʻo i luga o le:

Timberlake, Gaga, Presley,

Afai o elemene laulau o numera numera e mafai ona faʻataʻitaʻiina faʻatusatusaga ia i latou e pei o lenei faataitaiga:

Avanoa '{lolomi ($ 2 * $ 3) + $ 7}'

E ese mai le eseesega o elemene avanoa o le laina o loo i ai nei ($ 1, $ 2, ma isi) o loo i ai le fesuiaiga $ 0 lea e faasino i le laina atoa (laina), ma le fesuiaiga o le NF lea e umia le numera o fanua.

E mafai foʻi ona e faʻamatalaina fou fou e pei o lenei faʻataʻitaʻiga:

alaga '{sum = 0; mo (col = 1; col <= NF; col ++) sum + = $ col; lolomi le aofaiga; } '

O lenei mea e faʻaaogaina ma lolomiina le aofaiga o elemene uma o laina taʻitasi.

O faʻamatalaga faʻamataʻu e masani ona tuʻufaʻatasia ma tulafono e lua .