Imiyalelo, i-syntax kunye nemizekelo
Umyalelo we-awk yindlela enamandla yokucwangcisa okanye ukuhlalutya iifayile zetekisi-ngokukodwa, iifayile zedatha ezihlelwe ngemigca (imigqa) kunye neikholomu.
Imiyalelo ye- awk elula ingaqhutywa kumgca womyalelo . Imisebenzi enzima kakhulu kufuneka ibhaliwe njengeenkqubo ze-awk (ezibizwa ngokuba yi-awk scripts) kwifayili.
Ifom ye siseko yomyalelo we-awk ibonakala ngathi:
I-awk 'pattern {action}' enefayile-efayile-yefayileOku kuthetha ukuthi: thabatha umgca ngamnye wefayili yenkcazo; ukuba umgca uqulethe iphethini sisebenzise isenzo kumgca kwaye ubhale umgca obangelwayo kwisiphumo-ifayili. Ukuba iphethini ayiphumekanga, isenzo sisetyenziswe kuwo wonke umgca. Umzekelo:
awk '{shicilela i-$ 5}' itafile1.txt> output1.txtLe nkcazo ithatha iqela lomgca we-5 lomgca ngamnye kwaye uyibhala njengomgca kwifayile yokuphuma "output.txt". Uguquko '$ 4' lubhekisela kwikholam yesibili. Ngokufanayo unako ukufikelela kwikholam yokuqala, yesibini, neyesithathu, nge-$ 1, i-$ 2, i-$ 3, njl. Ngamakholomu angagqibekanga ukuba ahlukaniswe zizikhala okanye iithebhu (oko kuthiwa indawo emhlophe). Ngoko, ukuba ifayile yenkcazo "table1.txt" iqulethe le miqolo:
1, u-Justin Timberlake, Isihloko 545, Intengo ye-$ 7.30 yesi-2, iTrans Swift, Isihloko 723, Intengo ye-$ 7.90 3, uMick Jagger, Isihloko 610, Intlawulo ye-$ 7.90 4, i-Lady Gaga, Isihloko 118, ixabiso lika-7.30 5, uJohnny Cash, Isihloko 482, Ixabiso lika-6.50 6, uElvis Presley, Isihloko 335, Intlawulo ye-7.30 ye-7, uJohn Lennon, Isihloko 271, Intengo ye-$ 7.90 8, uMichael Jackson, Isihloko 373, Ixabiso lika-5.50Emva koko umyalelo ubhalela le migca elandelayo kwifayile yokuphuma "output1.txt":
545, 723, 610, 118, 482, 335, 271, 373,Ukuba i-separator yekholomu yinto enye ngaphandle kweendawo okanye iithebhu, ezifana ne-comma, ungacacisa ukuba kwisitatimende sama-awk ngolu hlobo:
u--F, '{shicilela i-$ 3}' itafile1.txt> output1.txtOku kuza kukhetha iqela ukusuka kwikholam 3 yomgca ngamnye ukuba amakholomu acingelwa ukuba ahlukaniswe yi-comma. Ngoko ke umphumo, kulo mzekelo, uya kuba:
Isihloko 545 Isihloko 723 Isihloko 610 Isihloko 118 Isihloko 482 Isihloko 335 Isihloko 271 Isihloko 373Uluhlu lweengxelo ngaphakathi kubakaki abalukiweyo ('{', '}') kuthiwa ibhloko. Ukuba ubeka inqobo imibandela phambi kwebhloko, isitatimenti ngaphakathi kwebhloko siya kuqhutywa kuphela ukuba imeko yinyani.
i-$ 7 == "\ $ 7.30" {shicilela i-$ 3} 'i-table1.txtKule meko, le mqathango i-$ 7 == "\ $ 7.30", oku kuthetha ukuba into ekhoyo kwikholamu 7 ilingana no-7.30. Ukubuyela emuva phambi kwesignali ye dollar kusetyenziswa ukukhusela inkqubo ekuguquleleni i-$ 7 njengenguqu eguqukileyo kwaye endaweni yoko thabatha uphawu lweedola.
Ngako-ke isingqinisiso se-awk sichaza into ekhompyutheni yesithathu yomgca ngamnye ophethe "$ 7.30" kwikholamu 7.
Ungasebenzisa kwakhona amagama anjalo njengemeko. Umzekelo:
awk '/ 30 / {phrinta i-$ 3}' itafile1.txtUmtya phakathi kwezi zimbini ('/') libonisa rhoqo. Kule meko, ngumgca nje "30." Oku kuthetha ukuba umgca uqulethe umtya othi "30", inkqubo ikhupha iqela kwikholamu yesi-3 yaloo mgca. Umphumo kulo mzekelo ungentla:
Timberlake, Gaga, Presley,Ukuba izixhobo zeetafile zinamanani ama-awk angasebenzisa izibalo kubo njengolu mzekelo:
awk '{shicilela ($ 2 * $ 3) + $ 7}'Ngaphandle kweenguqu ezifikelelekayo kumqolo okhoyo (i-$ 1, i-$ 2, njl.) Kukho i-variable engu-$ 0 ebhekisela kumgca opheleleyo (umgca), kunye ne-NF eguqukileyo egcina inani lemihlaba.
Ungachaza kwakhona iimpawu ezintsha njengoko kulomzekelo:
i-awk '{sum = 0; (col = 1; ikol <= NF; ikhol ++) isamba + = $ ikhol; isishwankathelo sokuprinta } 'Oku kuqulunqa kwaye kuprintwe isixa-mali sawo onke amanqaku omqolo ngamnye.
Iimpawu ze-Awk zihlala zidibaniswa kunye nemilayezo yobude.