Funda i-Linux Command - gawk

Igama

i-gawk - iphethini yokuskena kanye nokusetshenziselwa ulimi

Isiqubulo

gawk [Izinketho zesitayela se-POSIX noma i-GNU] -f Uhlelo-ifayela [ - ] ifayela ...
gawk [Izinketho zesitayela se-POSIX noma i-GNU] [ - ] ifayela lohlelo-umbhalo ...

pgawk [izinketho zesitayela se-POSIX noma i-GNU] -f Uhlelo-ifayela [ - ] ifayela ...
i-pgawk [i-POSIX noma i-GNU yezindlela zesitayela] [ - ] ifayela lohlelo-umbhalo ...

Incazelo

I-Gawk ukuqaliswa kwephrojekthi ye- GNU yolimi lwe-AWK. Ivumelana nencazelo yelwimi ku-POSIX 1003.2 Ulimi LwaseLimi Nezidingo Zomsebenzi. Le nguqulo isekelwe kwincazelo kulimi lwe-AWK Programming , ngu-Aho, Kernighan, no-Weinberger, ngezici ezengeziwe ezitholakala ku-System V Release 4 version ye-UNIX awk . I-Gawk iphinde inikeze izandiso ze-Bell Laboratories zamuva kakhulu, nezandiso eziningana ze-GNU.

I-Pgawk inguqulo yokuphrinta ye- gawk . Kuyinto efanayo kuzo zonke izindlela zokugibela , ngaphandle kokuthi izinhlelo zihamba kancane kancane, futhi iveza ngokuzenzakalelayo iphrofayli yokubulawa kwifaykprof.out yefayela uma isenziwe . Bona i-inketho yokukhetha, ngezansi.

Umzila womyalo unezinketho zokwenza gawk ngokwawo, umbhalo we-AWK (uma ungahambisani nge-- f noma -frifile yezinketho), namagugu ukuthi atholakale ku- ARGC naku- ARGV izincazelo ezichazwe ngaphambilini ze-AWK.

Ifomethi Yokukhetha

Izinketho zeGawk kungenzeka kube yizinketho zendabuko ze-POSIX eyodwa, noma izinketho ezindala ze-GNU. Izinketho ze-POSIX ziqala ngeyodwa `` - '', kuyilapho izinketho ezide ziqala ngokuthi `` - ''. Izinketho ezinde zihlinzekwa kuzo zonke izici eziqondene ne-GNU kanye nezici ezigunyaziwe ze-POSIX.

Ukulandela izinga le-POSIX, izinketho ze- gawk -specific zinikezwa ngezingxabano ku-- W inketho. Izinketho eziningi -W zinganikezwa Ngamunye -Ukhethwa kukho okukhethwa kukho okude, okuningiliziwe ngezansi. Iziphakamiso ezinketho ezinde zizohlanganiswa nenketho nge = uphawu, ezingenayo izikhala zokungenela, noma zinganikezwa emibhalweni elandelayo yomugqa womyalo. Izinketho ezinde zingase zifinyezwe, uma nje isifingqo sihlala singavamile.

Izinketho

I-Gawk yamukela okulandelayo okukhethwa kukho, kufakwe ohlwini lwe-alphabetically.

-F fs

i-divide-separator fs Sebenzisa i- fs yokuhlukanisa insimu yokufaka (inani le- FS variable echazwe ngaphambilini).

-v var = val

- vumela var = val Nika i- val value kuya variable var , ngaphambi kokuqaliswa kohlelo kuqala. Izimiso ezinjalo eziguquguqukayo ziyatholakala kwi- BEGIN block ye-AWK.

-f Uhlelo-ifayela

--file Uhlelo-ifayela Funda umthombo wohlelo lwe-AWK kusuka kuhlelo lwefayela -ifayela , esikhundleni sokungqubuzana kokuqala komugqa womyalo. Izinketho eziningi -f (noma -file ) zingasetshenziswa.

-mf NNN

-mr NNN Beka imingcele ehlukahlukene yememori ku-value NNN . I- f flag ibeka inani eliphezulu lamasimu, futhi i-flag ibeka ubukhulu berekhodi esiphezulu. Lawa mafulegi amabili kanye ne-- m inketho evela ku-Bell Laboratories yocwaningo lwe- UNIX awk . Ayinakwa yi- gawk , ngoba i- gawk ayinayo imingcele echazwe ngaphambilini.

-W compat

-Wendabuko

- qalisa

Run Running in mode ukuhambisana . Ngokuvumelanisa imodi, i- gawk iziphatha ngokufanayo ku- UNIX awk ; akukho zandiso ezithile ze-GNU eziqashelwayo. Ukusetshenziswa kwe- - kwesikhashana kunconywa ngaphezu kwezinye izinhlobo zalolu khetho. Bheka i- GNU EXTENSIONS , ngezansi, ukuze uthole olunye ulwazi.

-W copyleft

-W copyright

--copyleft

--copyright Phrinta inguqulo emfushane yomlayezo wolwazi lobunikazi we-GNU ekuphumeni okujwayelekile futhi uphume ngempumelelo.

-W i-dump-variables [ = ifayela ]

- i-dump-variables [ = ifayili ] Phrinta uhlu oluhlelwe lwezinguquko zomhlaba wonke, izinhlobo zazo kanye nezindinganiso zokugcina ezifayili. Uma kungekho fayili enikeziwe, i- gawk isebenzisa ifayela elibizwa ngokuthi ama- awkvars.out kumhlahlandlela wamanje.

Ukuba nohlu lwazo zonke iziguquko zomhlaba kuyindlela enhle yokubheka amaphutha we-typographical ezinhlelweni zakho. Futhi uzosebenzisa lolu khetho uma unesimiso esikhulu esinemisebenzi eminingi, futhi ufuna ukuqinisekisa ukuthi imisebenzi yakho ayisebenzisi ngokungafani ukuguquguquka komhlaba wonke owasho ukuthi ube yendawo. (Lokhu kuyiphutha elilula kakhulu lokwenza ngamagama eguquguqukayo efana ne- i , j , njalonjalo.)

-Usizo

-W ukusetshenziswa

--Usizo

- thinta Phrinta isifinyezo esifushane sezinketho ezikhona ekuphumeni okujwayelekile. (Ngamazinga we- GNU Coding , lokhu okukhethwa kukho kubangela ukuphuma ngokushesha, okuphumelelayo.)

-W lint [ = ebulalayo ]

--lint [ = ebulalayo ] Nikeza izixwayiso mayelana nokwakhiwa okungenangqondo noma okungekho ukuphatheka kwamanye ukuqaliswaAWK. Ngenkinga yokuzikhethela yezixwayiso ezibulalayo , izixwayiso ziba amaphutha abulalayo. Lokhu kungase kube nzima, kodwa ukusetshenziswa kwayo ngokuqinisekile kuyokhuthaza ukuthuthukiswa kwezinhlelo ezihlanzekile ze-AWK.

-Win-old ubudala

- i-old-old inikeza izixwayiso mayelana nokwakhiwa okungenakulinganiswa nenguqulo yokuqala ye-Unix awk .

-W gen-po

- scan -po bese uphawula uhlelo lwe-AWK, futhi ukhiqize ifayela lefomethi ye-GNU .po ngokukhipha okujwayelekile nokungena kuzo zonke izintambo ezikhona lapho kuhlelo. Lolu hlelo ngokwalo alukwenziwa. Bona ukusatshalaliswa kokuthola okuningi kwe-GNU ngolwazi oluthe xaxa kumafayela we- .po .

-W okungewona kwedasimali-idatha

Idatha-decimal-decimal Idatha ye- octal ne-hexadecimal amanani kwimininingwane yokufaka. Sebenzisa le ndlela ngokuqapha okukhulu!

-I-posix

- postx Lokhu kuvula imodi yokuhambelana, nemikhawulo elandelayo eyengeziwe:

*

\ x ukulandelwa kwemidwebo akubonwa.

*

Isikhala kanye nethebhu kuphela njengabahlukanisi bezinsimu uma i- FS isethwe esikhaleni esisodwa, i-newline ayikho.

*

Awukwazi ukuqhubeka imigqa ngemuva ? futhi :.

*

I-synonym func yomsebenzi wegama elingukhiye ayitholakali.

*

Ama-operators ** no ** = angeke asetshenziswe esikhundleni se ^ no ^ = .

*

Umsebenzi we- fflush () awutholakali.

-Iphrofayela [ = prof_file ]

--profile [ = prof_file ] Thumela idatha yokufakela kuphrofayli . Okuzenzakalelayo ngu- awkprof.out . Uma ugijima nge- gawk , iphrofayli nje inguqulo `` enhle kakhulu ephrintiwe '' yohlelo. Uma ugijima nge- pgawk , iphrofayli iqukethe ukubala kokulinganisa kwesitatimende ngasinye ohlelweni kumkhawulo wesokunxele nokubala kohlelo lokusebenza lomsebenzi ngamunye ochazwe ngumsebenzisi.

-Ukuphumula kabusha

-re-interval Nika amandla ukusebenzisa izinkulumo zesikhashana ngokufanelana okuboniswayo njalo (bheka Ukuboniswa Okuvamile , ngezansi). Izinkulumo ezingavamile azikho ngezilimi ngezilimi ze-AWK. Izinga le-POSIX lenezile, ukwenza i- awk ne- egrep ihambisane. Kodwa-ke, ukusetshenziswa kwabo kungenzeka ukuphule izinhlelo ze-AWK ezindala, ngakho-ke ukuhlinzeka kuphela uma ziceliwe ngalolu khetho, noma uma-i- postx icacisiwe.

-W source program-text

- Uhlelo lwezinhlelo-umbhalo Sebenzisa uhlelo-umbhalo njengekhodi yomthombo we-AWK. Lolu khetho luvumela ukuhlanganiswa okulula kwemisebenzi yamathalabhu (asetshenziswe nge-- f and -file ongakhetha kukho) ngekhodi yomthombo efakwe kulayini lomyalo. Kuhloswe ngokuyinhloko izinhlelo eziphakathi kwe-AWK eziphakathi nendawo ezisetshenziselwa izikripthi zegobolondo.

-W version

--verver Ukuphrinta ulwazi lwephrinta yale khophi ethile ye- gawk ekuphumeni okujwayelekile. Lokhu kuyasiza kakhulu ukwazi ukuthi ikhophi yamanje ye- gawk kusistimu yakho isesikhathini ngokuphathelene nanoma yini i-Free Software Foundation ehambisa. Lokhu kuyasiza futhi uma ubika izimbungulu. (Ngamazinga we- GNU Coding , lokhu okukhethwa kukho kubangela ukuphuma ngokushesha, okuphumelelayo.)

- Faka uphawu lokuphela kwezinketho. Lokhu kuyasiza ukuvumela iziphakamiso ezengeziwe ohlelweni lwe-AWK ngokwayo ngokuqala nge `` - ''. Lokhu ngokuyinhloko ukuhambisana nokuphikisana okuqhutshwayo okusetshenziselwa ezinye izinhlelo eziningi ze-POSIX.

Ngokuvumelanisa imodi, noma yikuphi okunye okukhethwa kukho okuhlatshwa umkhosi njengokungavumelekile, kodwa kungenjalo. Ekusebenzeni okujwayelekile, uma nje umbhalo we-program unikeziwe , izinketho ezingaziwa zidluliselwa ohlelweni lwe-AWK ku- ARGV uhlu lokucubungula. Lokhu kuyasiza kakhulu ekusebenzeni izinhlelo ze-AWK nge-`` #! '' Indlela yokuhumusha ephumelelayo.

UKUPHATHWA KWE-AWK

Uhlelo lwe-AWK luqukethe ukulandelana kwezitatimende zezenzo-nezenzo nezincazelo zomsebenzi ozikhethela wona.

iphethini { izitatimende zesenzo }

Igama lomsebenzi ( uhlu lwepharamitha ) { izitatimende }

I-Gawk ifunda kuqala umthombo wohlelo kufayela-ifayela (ama) uma kukhonjisiwe, kusuka kumibono kuya ku- source , noma kusuka ekuchaseni kokuqala okungenayo inketho emgqeni womyalo. Izinketho ze-- f and -source zingasetshenziswa izikhathi eziningi emgqeni womyalo. I-Gaw ifunda umbhalo wohlelo njengokungathi wonke amathekisthi e- program- fomu kanye nemilayezo yomyalo wamakhomishini ayekwenziwa ngokubambisana. Lokhu kuyasiza ekwakhiweni kwemitapo yezinhlelo ze-AWK, ngaphandle kokuzifaka ohlelweni olusha lwe-AWK oluyisebenzisa. Ibuye inikeze ikhono lokuxuba imisebenzi yamatayibrari nezinhlelo zamakhodi omyalo.

I-variable variable yemvelo i- AWKPATH icacisa indlela yokusesha oyisebenzisayo lapho uthola amafayela omthombo okuthiwa yi-- f inketho. Uma lokhu kuguquguquka kungekho, indlela ezenzakalelayo ".: / Usr / yendawo / share / awk" . (Isiqondisi sangempela singashintsha, kuye ngokuthi i- gawk yakhiwe kanjani futhi ifakiwe.) Uma igama lefayela linikezwe ku-- f inketho iqukethe uhlamvu `` / '', akukho ukucinga komzila okwenziwe.

I-Gawk yenza izinhlelo ze-AWK ngale ndlela elandelayo. Okokuqala, zonke izabelo eziguquguqukayo ezichazwe nge-- v inketho zenziwa. Okulandelayo, i- gawk iqoqa lolu hlelo kwifomu yangaphakathi. Khona-ke, i- gawk yenza ikhodi ku- BEGIN block (s) (uma ikhona), bese iqhubeka ukufunda ifayela ngalinye elibizwa nge- ARGV . Uma kungekho amafayela aqanjwe emgqeni we-command, gawk ufunda okokufaka okujwayelekile.

Uma igama lomgca emgqeni wokulalisa unesimo var = val ithathwa njengesabelo esivamile. I variable vari var izonikezwa i- val value. (Lokhu kwenzeka ngemuva kokuthi noma yikuphi BEGIN ama- block (s) asetshenzisiwe.) Ukunikezwa kwesigatshana somugqa wokulawula kuyasiza kakhulu ekunikezeni amanani amanani eziguquguqukayo ezisetshenziswayo i-AWK ukulawula ukuthi ukufakelwa kwephula kanjani amasimu namarekhodi. Kuyasiza futhi ekulawuleni isimo uma kudlula amaphutha amaningi phezu kwefayela elilodwa lemininingwane.

Uma inani lesici esithile se- ARGV lingenalutho ( "" ), i- gawk yeqa phezu kwayo.

Ngerekhodi ngalinye kulokho okufakwayo, ukuhlolwa kwe- gawk ukubona ukuthi kuhambisana nanoma iyiphi iphethini ohlelweni lwe-AWK. Ngephrojekthi ngayinye efana nerekhodi, isenzo esihambisanayo senziwa. Amaphethini ahlolwe ngendlela ehlelwa ngayo ohlelweni.

Okokugcina, ngemva kokuphela kokufakwayo, i- gawk yenza ikhodi ku-block (s) END (uma ikhona).

Izinguquko, Amarekhodi, nezinsimu

Izinhlobonhlobo ze-AWK zishintsha; zivela lapho ziqala ukusetshenziswa. Izindinganiso zabo zingama-floating-point numbers noma izintambo, noma kokubili, kuye ngokuthi zisetshenziswa kanjani. I-AWK inezigcawu eziyingxenye eyodwa; izigaba ezinezilinganiso eziningi zingahle zenziwe. Izinguquko eziningana ezichazwe ngaphambili zibekwe njengezinhlelo zokugijima; lezi zizochazwa njengoba zidinga futhi zifingqiwe ngezansi.

Amarekhodi

Ngokuvamile, amarekhodi ahlukaniswa izinhlamvu ezintsha. Ungakwazi ukulawula ukuthi amarekhodi ahlukaniswa kanjani ngokunikeza amanani kwi- RS ehlanganisiwe . Uma i- RS ingumlingisi oyedwa, lowo mlingiswa uhlukanisa amarekhodi. Ngaphandle kwalokho, i- RS iyinkulumo ejwayelekile. Umbhalo kokufaka okufana nale nkulumo ejwayelekile ihlukanisa irekhodi. Kodwa-ke, ngokuhambisana nemodi, umlingisi wokuqala wokulinganisa izintambo zawo usetshenziselwa ukwehlukanisa amarekhodi. Uma i- RS isethelwe enqenqemeni engekho, amarekhodi ahlukaniswa imigqa engalutho. Uma i- RS isethelwe enqenqemeni engenalutho, umlingiswa we-newline usebenza njalo njengendlela yokuhlukanisa insimu, ngaphezu kwanoma yiliphi inani le- FS elingase libe nalo.

Amasimu

Njengoba irekhodi ngalinye lokufakwayo lifundwa, i- gawk ihlukanisa irekhodi emasimini , isebenzisa ukubaluleka kokuguquguquka kwe- FS njengendlela yokuhlukanisa insimu. Uma i- FS ingumlingisi owodwa, amasimu ahlukaniswe yilowo mlingiswa. Uma i- FS yinkambo engalingani, khona-ke uhlamvu lomuntu ngamunye luba yinkambu ehlukile. Ngaphandle kwalokho, i- FS kulindeleke ukuba ibe inkulumo evamile ejwayelekile. Esimweni esikhethekile ukuthi i- FS iyisikhala esisodwa, amasimu ahlukaniswe ukugijima kwezikhala kanye / noma amathebhu kanye / noma izintambo ezintsha. (Kodwa bheka ingxoxo ye- postx , ngezansi). QAPHELA: Inani le- IGNORECASE (bheka ngezansi) liphinde lithinte indlela amasu ahlukaniswa ngayo uma i- FS isho njalo, nokuthi amarekhodi ahlukaniswa kanjani uma i- RS isho njalo.

Uma ngabe ukuguquguquka kwe- FIELDWIDTHS kusethwe ohlwini lwezinombolo ezihlukaniswe isikhala, insimu ngayinye kulindeleke ukuthi ibe nobubanzi obubanzi, futhi igalawk ihlukanisa irekhodi ngokusebenzisa ububanzi obucacisiwe. Inani le- FS lishaywa indiva. Ukubeka inani elisha ku- FS kudlula ukusetshenziswa kwe- FIELDWIDTHS , futhi kubuyisela ukuziphatha okuzenzakalelayo.

Insimu ngayinye kumrekhodi wokufakwayo ingaboniswa yisimo sayo, i-$ 1 , $ 2 , njalonjalo. I-$ 0 yiyona irekhodi lonke. Izinsimu akudingeki zikhonjiswe yizintambo:

n = 5
phrinta $ n

iphrinta insimu yesihlanu kumrekhodi wokufaka.

I-variable ye- NF isethelwe inani lezinkambu kumlando wokufaka.

Ukubhekisela emasimini engekho (okusho amasimu emva kwe-$ NF ) ukukhiqiza izintambo ezingenalutho. Noma kunjalo, ukunikezela emkhakheni ongekho (isib., $ (NF + 2) = 5 ) kwandisa inani le- NF , kudala noma yikuphi amasimu okungenelela nge-string engenayo njengenani lawo, futhi kubangela ukuthi inani le- $ 0 libuyiswe, amasimu ehlukaniswa nenani le- OFS . Ukubhekisela emasimini ambalwa angalungile kubangela iphutha elibulalayo. Ukwehlisa i- NF kubangela ukuthi amanani amasimu adlulele inani elisha alahleke, futhi inani lika- $ 0 lizophindiswa, nezinkambu ezihlukaniswa ngenani le- OFS .

Ukubeka inani ensimini ekhona kubangela ukuba irekhodi lonke livuselelwe lapho i-$ 0 ibonisiwe. Ngokufanayo, ukwazisa inani ku- $ 0 kubangela ukuthi irekhodi lihlonishwe, lidale amanani amasha emasimini.

Izilinganiso ezakhiwe ngaphakathi

Izinguquko ezakhiwe zikaGawk yizi:

I-ARGC

Inombolo yemibono yomugqa womyalo (ayifaki phakathi kokukhethwa kukho, noma umthombo wohlelo).

ARGIND

Inkomba ku- ARGV yefayili yamanje iqhutshwa.

I-ARGV

I-array of arguments line yomyalo. I-array is indexed kusuka ku-0 kuya ku- ARGC - 1. Ukuguqula ngokunambili okuqukethwe kwe- ARGV kungalawula amafayela asetshenziselwa idatha.

BINMODE

Kumasistimu angewona ama-POSIX, icacisa ukusetshenziswa kwemodi `` ibhanana '' kuwo wonke amafayela we-I / O. Amanani amanani ka-1, 2, noma amathathu, cacisa lawo mafayela wokufaka, amafayela okukhipha, noma wonke amafayela, ngokulandelana, kufanele asebenzise i-O / A kanambambili. Amanani omgqa we- "r" , noma "w" acacisa ukuthi amafayili okufaka, noma amafayela okukhipha, ngokulandelana, kufanele asebenzise i-O / A kanambambili. Amanani omgqa we- "rw" noma "wr" acacisa ukuthi wonke amafayela kufanele asebenzise i-O / A kanambambili. Noma yiliphi elinye inani lezintambo liphathwa njenge "rw" , kodwa lidala umyalezo wokuxwayisa.

CONVFMT

Ifomethi yokuguqula izinombolo, "% .6g" , ngokuzenzakalelayo.

ENVIRON

I-array equkethe amanani wemvelo yamanje. I-array ikhonjiswe yiziguquguquko zemvelo, into ngayinye ibe yinani laleyo variable (isib. ENVIRON ["IKHAYA"] ingaba / ekhaya / arnold ). Ukushintsha lokhu okungahambisani nakho akuthinti imvelo ebonwe yizinhlelo ezitholwa ngokuhlelwa kabusha noma uhlelo lokusebenza () .

ERRNO

Uma iphutha lesistimu livela noma wenza ukulungiswa kabusha kwekhalenda , ngesikhathi sokuthola i- line , noma ngesikhathi sokuvala () , i- ERRNO izoqukatha uchungechunge oluchaza iphutha. Inani lihambisana nokuhumusha ezindaweni ezingezona isiNgisi.

FIELDWIDTHS

Uhla oluhlukanisiwe lendawo emhlophe lwezinsimu. Uma usetha, ukugoqa kudlulisa okufakwayo emasimini obubanzi obuhleliwe, esikhundleni sokusebenzisa ukubaluleka kokuguquguquka kwe- FS njengehlukanisi yensimu.

IGAMA LEFAYELA

Igama lefayela lokufaka yamanje. Uma kungekho amafayela acacisiwe emgqeni womyalo, inani le- FILENAME lithi `` - ''. Noma kunjalo, i- FILENAME ayifakiwe ngaphakathi kwe- BEGIN block (ngaphandle uma isetwe ngu- line ).

FNR

Inombolo yokurekhoda yokufakwayo kufayili yokufaka yamanje.

FS

Isihlukanisi sensimu yokufaka, isikhala ngokuzenzakalelayo. Bheka amasimu , ngenhla.

IGNORECASE

Ilawula ukuzwela kobuchopho kuzo zonke izinkulumo ezijwayelekile nokusebenza kwezintambo. Uma i- IGNORECASE inenani elingelona i-zero, ukuqhathaniswa kwezintambo nokufaniswa kwephethini emithethweni, ukuhlukaniswa kwensimu ne- FS , irekhodi ehlukanisa ne- RS , ukufaniswa okuvamile nge ~ ~ !, Kanye nabantuub () , gsub () , index () , ukufanisa () , ukuhlukaniswa () , kanye nezinsizakalo ezingaphansi (() ezakhelwe ngaphakathi konke ukungazinaki icala uma wenza imisebenzi ejwayelekile yokukhuluma. QAPHELA: I- Array subscripting ayithinteki, futhi umsebenzi we- asort () awusebenzi .

Ngakho-ke, uma i- IGNORECASE ingalingani ne-zero, / aB / ihlanganisa zonke izintambo "ab" , "aB" , "Ab" , ne "AB" . Njengazo zonke iziguquko ze-AWK, inani lokuqala le- IGNORECASE liyizero, ngakho konke okujwayelekile okuboniswayo kanye nokusebenza kwezintambo ngokuvamile kuvamile. Ngaphansi kwe-Unix, isethi ephelele ye- ISO 8859-1 ye-Latin-1 isetshenziselwa ukungazinaki icala.

LINT

Inikeza ukulawula okunamandla kokukhethwa kwe ---lint kusuka ohlelweni lwe-AWK. Uma kuyiqiniso, i- gawk ifaka izixwayiso ezincane . Uma kungamanga, akusho. Uma wabelwa inani lezintambo "ezibulalayo" , izixwayiso ze-lint ziba amaphutha abulalayo, ngokufana ncamashí - isilwane = esibulalayo . Noma yikuphi okunye okuyiqiniso okwenziwe nje kungenza izixwayiso.

NF

Inombolo yamasimu emrekhodini wokufaka wamanje.

I-NR

Inani eliphelele lamarekhodi wokufakwayo abonwe kuze kube manje.

OFMT

Ifomethi yokukhipha izinombolo, "% .6g" , ngokuzenzakalelayo.

OFS

I-separator field separator, isikhala ngokuzenzakalelayo.

ORS

I-separator irekhodi yokukhipha, ngokuzenzakalelayo i-newline.

PROCINFO

Izakhi zalolu hlu zihlinzeka ukufinyelela kolwazi mayelana nokusebenza kwe-AWK. Kwezinye izinhlelo, kungase kube khona izingxenye ezigciniwe, "iqembu1" ngokusebenzisa "iqembu n " labanye, okungukuthi inani lamaqembu angeziwe ukuthi le nqubo inayo. Sebenzisa opharetha ukuhlola lezi zakhi. Izakhi ezilandelayo ziqinisekisiwe ukuthi ziyatholakala:

I-PROCINFO ["egid"]

ukubaluleka kocingo lwesistimu ye- getegid (2).

I-PROCINFO ["euid"]

ukubaluleka kocingo lwe- geteuid (2) wesistimu.

I-PROCINFO ["FS"]

"FS" uma insimu ehlukaniswa nge- FS isebenza, noma "FIELDWIDTHS" uma insimu ehlukaniswa ne- FIELDWIDTHS isebenza.

I-PROCINFO ["gid"]

ukubaluleka kocingo lwe- getgid (2) wesistimu.

I-PROCINFO ["pgrpid"]

i-ID yenqubo yenkampani yenqubo yamanje.

I-PROCINFO ["pid"]

i-ID yenqubo yenqubo yamanje.

I-PROCINFO ["ppid"]

i-ID yenqubo yomzali yenqubo yamanje.

I-PROCINFO ["uid"]

ukubaluleka kocingo lwe- getuid (2) wesistimu.

I-RS

I-separate separator irekhodi, ngokuzenzakalelayo i-newline.

RT

I-record terminator. I-Gawk isetha RT kumbhalo wokufaka ohambisana nomlingiswa noma inkulumo evamile echazwe yi- RS .

RSTART

Inkomba yomlingisi wokuqala ohambelana nomdlalo () ; 0 uma kungekho okufanayo. (Lokhu kusho ukuthi izinhlamvu zomlingisi ziqala ngenye.)

I-RLENGTH

Ubude bezintambo ezihambisana nomdlalo () ; -1 uma kungenjalo.

SUBSEP

Isilingisi esetshenziselwa ukuhlukanisa okubhaliselwe okuphindwe ngezakhi ezihlangene, ngokuzenzakalelayo "\ 034" .

TEXTDOMAIN

Isizinda sombhalo we-AWK; esetshenziselwa ukuhumusha okwenziwe okwakhiwe ngamachungechunge alo hlelo.

I-Arrays

Ama-arrays abhalisiwe ngezwi phakathi kwabakaki abesikwele ( [ no ] ). Uma le nkulumo yohlu lokubonisa (i- expr , i- expr ...) bese kubhaliswa okuyi-string kuyintambo ehlanganisa ukunqunywa kwe-string (value) yenkulumo ngayinye, ehlukaniswe nenani le-variable ye- SUBSEP . Lesi sakhiwo sisetshenziselwa ukulinganisa izigcawu ezenziwe ngokuphindaphindiwe. Ngokwesibonelo:

i = "A"; j = "B"; k = "C"
x [i, j, k] = "siyabonga, umhlaba \ n"

unikezela uchungechunge "hello, umhlaba \ n" kwisici se-array x ekhonjiswe yochungechunge ethi "A \ 034B \ 034C" . Zonke izigaba ku-AWK zihlangene, okungukuthi zikhokhelwe ngama-string values.

I-opharetha ekhethekile angase isetshenziswe ku-an noma uma isitatimende sibona ukuthi i-array inezinkomba ezinenani elithile.

uma (val in array) phrinta uhlu [val]

Uma i-array inezikhokhelo eziningi, sebenzisa (i, j) ngokulandelana .

Ukwakhiwa kungasetshenziswa futhi ku-loop ukuze iqhubekele phezu kwazo zonke izakhi ze-array.

Isici singase sisuswe ohlwini ngokusebenzisa isitatimende sokususa . Isitatimende sokususa singase sisetshenziselwe ukususa konke okuqukethwe kwesigaba, ngokucacisa igama legama ngaphandle kokubhalisa.

Ukuthayipha okuguqukayo nokuguqulwa

Izinhlobonhlobo nezinkambu zingase zibe (izinombolo ezijikelezayo), noma izintambo, noma kokubili. Indlela ukubaluleka kokuguquguquka okuhunyushwa ngayo kuxhomeke kumongo wayo. Uma isetshenziswe enkulumweni yezinombolo, izophathwa njengenombolo, uma isetshenziswe njengezintambo izophathwa njengezintambo.

Ukuphoqa ukuguquguquka ukuphathwa njengenombolo, engeza u-0 kuso; ukuliphoqa ukuba liphathwe njengezintambo, lithinte ngesicingo esingenalutho.

Uma ucingo kufanele luguqulwe kwinombolo, ukuguqulwa kufezwa usebenzisa i- strtod (3). Inombolo iguqulwa ibe yochungechunge ngokusebenzisa inani le- CONVFMT njengefomathi yefomethi ye- sprintf (3), ngenani lezinombolo leguquguquki njengengxabano. Kodwa-ke, yize zonke izinombolo ku-AWK ziyi-point-float, amanani abalulekile ahlala eguqulwa njengezinombolo. Ngakho, kunikeziwe

CONVFMT = "% 2.2f" a = 12 b = a ""

i-variable variable inezinhlamvu ze- 12 " hhayi " 12.00 " .

I-Gawk yenza ukufanisa kanje: Uma izinguquko ezimbili ziyizinombolo, zifaniswa nenombolo. Uma inani elilodwa liyizinombolo kanti enye inenani lezintambo elithi `` izinombolo zezinombolo, '' uma kuqhathaniswa nazo zenziwa ngezinombolo. Uma kungenjalo, inani lezinombolo liguqulwa kwichungechunge bese kuqhathaniswa ukucutshungulwa kwezintambo. Imicu emibili iyaqhathaniswa, yebo, njengezintambo. Qaphela ukuthi izinga le-POSIX lisebenza umqondo we `` izintambo zezinombolo '' kuyo yonke indawo, ngisho nasezintanjeni zezintambo. Noma kunjalo, lokhu akusobala , futhi i- gawk ayenzi lokhu. (Ngenhlanhla, lokhu kulungiswe kunguqulo elandelayo yezinga elijwayelekile.)

Qaphela ukuthi izingqimba zezintambo, ezifana ne- "57" , azizona izintambo zenombolo, ziyizintambo zezintambo. Umqondo we `` izinombolo zezinombolo '' usebenza kuphela kumasimu , okokufaka kwe- getline , izakhi ze- FILENAME , i- ARGV , izakhi ze- ENVIRON kanye nezakhi zesigaba esenziwe ngokuhlukaniswa () okuyizinombolo zamanani. Umqondo oyisisekelo wukuthi ukufakelwa komsebenzisi , futhi okufakwayo komsebenzisi kuphela, okubukeka njengezinombolo, kufanele kuphathwe ngaleyo ndlela.

Izinguquko ezingahambisani nendawo zinenani lezinombolo ezingu-0 kanye nenani lezintambo "" (null, noma engenalutho, string).

Ama-Constant ne-Hexadecimal Constants

Ukuqala nge-version 3.1 ye- gawk, ungasebenzisa i-C-style octal kanye ne-hexadecimal constants kukhodi yakho yomthombo we-AWK. Isibonelo, inani le-octal 011 lilingana nedesimali 9 , futhi inani le-hexadecimal 0x11 lilingana nesimiso esinqunyiwe 17.

Izikhathi eziqinile

Izindinganiso zomgqa ku-AWK zilandelana nezinhlamvu ezifakwe phakathi kwamacaphuno amabili ( " ). Ngaphakathi kwezingcingo, ukulandelana okunye kokuphuma ekukhunjweni kuyabonakala, njengaku-C. Lezi yizi:

\\

Ukubuyela emuva kwangempela.

\ a

Umlingiswa '`uqaphile' '; ngokuvamile umlingiswa we-ASCII BEL.

\ b

i-backspace.

\ f

ifomu lokudla.

\ n

i-newline.

\ r

ukubuya kwezimoto.

\ t

ithebhu enezingqimba.

\ v

ithebhu eliqondile.

\ x amadijithi ayi-hex

Umlingiswa omelelwe izintambo zamadijithi angu-hexadecimal ngemuva kwe- \ x . Njenge-ANSIC, zonke izinombolo ze-hexadecimal ezilandelayo zibhekwa njengengxenye yokulandelana kokuphunyuka. (Lesi sici kufanele sisitshele okuthile ngokuklama ulimi ngekomidi.) Isibonelo, "\ x1B" ngumlingisi we-ASCIIESC (ukuphunyuka).

\ ddd

Umlingiswa omelelwe ukulandelana kwama-octal oku-1, 2, noma ama-3. Isibonelo, "i-\ 033" iyinhlamvu ye-ASCII ESC (ukuphunyuka).

\ c

Umlingisi wangempela c .

Ukulandelana kokuphunyuka kungase kusetshenziswe ngaphakathi kwezinkulumo ezivamile (isib., [\ T \ f \ n \ r \ v] / ukufaniswa nezinhlamvu ze-whitespace).

Ngokuhambelana nemodi, izinhlamvu ezimelelwa ukulandelana kwe-octal ne-hexadecimal zilandelwa ngokoqobo uma zisetshenziselwa imivamisa yezinkulumo ezivamile. Ngakho, i- \ 52b / ilingana / \ * b / .

Amaphethini nezenzo

I-AWK ulimi oluhlelwe ngamakholi. Iphethini iza kuqala, bese isenzo. Izitatimende zesenzo zifakwe ku- { and } . Noma ngabe iphethini ingase ilahleke, noma isenzo singase silahleke, kodwa, yiqiniso, hhayi kokubili. Uma iphethini ilahlekile, isenzo senzelwa wonke irekhodi elilodwa lokufaka. Isenzo esingekho siyalingana

{phrinta}

okushicilela irekhodi lonke.

Amazwana aqala ngohlamvu '`#' ', futhi uqhubeke kuze kube sekupheleni komugqa. Imigqa engacacile ingasetshenziselwa ukwehlukanisa izitatimende. Ngokuvamile, isitatimende siphelela nge-newline, kodwa, lokhu akusiyo icala lemigqa ephela ``, '', { , ? , : , && , noma || . Imigqa ephelile noma yenza izitatimende zabo ziqhubekele ngokuzenzakalelayo kulo mzila olandelayo. Kwezinye izimo, umugqa ungaqhubeka ngokuwuqeda nge-', lapho kwenzeka khona i-newline izobe inganakiwe.

Izitatimende eziningi zingafakwa emgqeni owodwa ngokuzihlukanisa nge ``; ''. Lokhu kusebenza kuzo zombili izitatimende ngaphakathi kwengxenye yesenzo sephaneli yesenzo-isenzo (icala elijwayelekile), kanye nezitatimende zendlela yokuziphatha ngokwayo.

Amaphethini

Amaphethini we-AWK angase abe okukodwa kokulandelayo:

QALA ukuphela / inkulumo ejwayelekile / iphethini lokubonisana lohlobo & iphethini iphethini || iphethini iphethini ? iphethini : iphethini ( iphethini ) ! iphethini iphethini1 , iphethini2

Qala futhi i- END yizinhlobo ezimbili ezikhethekile zamaphethini ezingavunyelwe ngokufakwayo. Izingxenye zesenzo kuzo zonke amaphethini we- BEGIN zihlanganisiwe njengokungathi zonke izitatimende zibhaliswe ku- BEGIN block eyodwa. Benziwa ngaphambi kokuba noma yikuphi kokufakwayo okufundwayo. Ngokufanayo, zonke izithiyo ze- END zihlanganisiwe, futhi zenziwa lapho konke okufakwayo sekuphelile (noma uma isitatimende sokuphuma senziwa). Amaphethini we- BEGIN ne- END awakwazi ukuhlanganiswa namanye amaphethini kumazwi wephethini. Ama-BEGIN ne- END amaphethini angeke abe nezinxenye zesenzo ezingekho.

Ukuze / inkulumo / amaphethini avamile, isitatimende esihambisanayo senzelwa irekhodi ngalinye lokufakwayo elifana nkulumo ejwayelekile. Amazwi avamile afana nalawo okuyi-egrep (1), futhi afingqiwe ngezansi.

Inkulumo ehlobeneyo ingasebenzisa noma yiyiphi i-opharetha echazwe ngezansi esigabeni sezenzo. Lezi zivame ukuhlola ukuthi amasimu athile afana namazwi athile avamile.

I && , || , futhi ! ama-operators anengqondo futhi, anengqondo OR, futhi aziqondi kahle, ngokulandelana, njengokungathi ku-C. Benza ukuhlolwa okufushane, futhi ku-C, futhi basetshenziselwa ukuhlanganisa izinkulumo zamaphethini eziningi. Njengasezilimini eziningi, abakwa-parentheses bangasetshenziswa ukushintsha ukuhlelwa kokuhlolwa.

I - ?? : Opharetha afana nomqhubi ofanayo ku-C. Uma iphethini lokuqala liyiqiniso ke iphethini esetshenziselwa ukuhlolwa yiphatheni yesibili, ngaphandle kwalokho kuyisithathu. Kuphela ukuhlolwa kwamaphethini wesibili kanye nesithathu kuphela.

Iphethini1 , ifomu le- pattern2 yenkulumo libizwa ngokuthi iphethini yebanga . Ihambisana nawo wonke amarekhodi okufakwayo aqala ngerekhodi efana nephethini1 , futhi aqhubeke kuze kube yilapho irekhodi elifana nephethini2 , elibandakanya. Akuhambisani nanoma yiluphi olunye uhlobo lwendlela yokubonisa iphethini.

Amazwi avamile

Izinkulumo ezivamile zihlobo olude olutholakala ku- egrep . Zakhiwa ngabalingiswa ngale ndlela elandelayo:

c

ifana ne-non-metacharacter c .

\ c

kufana nomlingiswa wangempela c .

.

ifanisa noma yiliphi uhlamvu olufaka i- newline.

^

kufanisa ukuqala kwechungechunge.

$

kufanisa ukuphela kwechungechunge.

[ abc ... ]

uhlu lomlingiswa, lufana nanoma yiliphi lezinhlamvu abc ....

[^ abc ... ]

uhlu lwezinhlamvu ezingenalutho, lufanelana nanoma yiliphi uhlamvu ngaphandle kwe- abc ....

r1 | r2

ukushintshaniswa: kufanelana noma i- r1 noma i- r2 .

r1r2

concatenation: ukulinganisa u- r1 , bese u- r2 .

r +

ihambelana eyodwa noma ngaphezulu r .

r *

ifana ne-zero noma ngaphezulu k.

r ?

kufana ne-zero noma i- r .

( r )

ukuhlanganisa: ukulinganisa r .

r { n }

r { n ,}

r { n , m } Inombolo eyodwa noma ezimbili ngaphakathi ngaphakathi kwe-braces zikhomba inkulumo ephakathi . Uma kunombhalo owodwa ku-braces, inkulumo ejwayelekile ejwayelekile ephindwa izikhathi. Uma kukhona izinombolo ezimbili ezihlukaniswe ngomsindo, r uphindaphindiwe n m izikhathi. Uma kunenombolo eyodwa elandelwa i-comma, khona-ke iphindwe okungenani izikhathi ezingu- n .

Izinkulumo ezivame ukutholakala zitholakala kuphela uma ngabe - i- postx noma i -interval-interval icacisiwe emgqeni womyalo.

\ y

ifanisa izintambo ezingenalutho ekuqaleni noma ekupheleni kwegama.

\ B

ifanisa ucingo olungenalutho ngaphakathi kwegama.

\ <

ifanisa ucingo olungenalutho ekuqaleni kwegama.

\>

ifanisa ucingo olungenalutho ekupheleni kwegama.

\ w

ufanisa noma yiliphi uhlobo lombhalo (i-letter, idijithi, noma i-underscore).

\ W

kufanisa noma yiliphi uhlamvu olungelona amagama

\ `

ifanisa ucingo olungenalutho ekuqaleni kwe-buffer (string).

\ '

ifanisa ucingo olungenalutho ekupheleni kwe-buffer.

Ukulandelwa kokuphunyuka okusebenzayo ezintanjeni zezintambo (bheka ngezansi) nazo zivumelekile ezinkulumweni ezivamile.

Amakilasi e-Character ayisici esisha esivezwe ku-standard POSIX. Isigaba somlingiswa isaziso esiyingqayizivele sokuchaza uhlu lwezinhlamvu ezinesici esithile, kodwa lapho izinhlamvu zangempela ngokwazo zingahlukahluka ngamazwe kanye / noma kusuka kumlingisi usethelwe kwisethi yamagugu. Isibonelo, umbono wokuthi yiliphi uhlamvu lwe-alfabeti uhlukile e-USA naseFrance.

Isigaba somlingiswa sisebenza kuphela enkulumweni evamile ngaphakathi kubakaki bohlu lomlingiswa. Izigaba zezinhlamvu zihlanganisa [ ,, igama elingukhiye elichaza ekilasini, futhi :] . Amakilasi wezinhlamvu ezichazwe ngezinga le-POSIX yilezi:

[: alnum:]

Izinhlamvu ze-alphanumeric.

[: alpha:]

Izinhlamvu ze-Alphabet.

[: kungenalutho:]

Isikhala noma izinhlamvu zamathebhu.

[: cntrl:]

Izinhlamvu zokulawula.

[: idijithi:]

Izinhlamvu zamanani.

[: igrafu:]

Izinhlamvu zombili eziphrintiwe futhi ezibonakalayo. (Isikhala sinyatheliswa, kodwa singabonakali, kuyilapho kukhona kokubili.)

[: ephansi:]

Izinhlamvu ezingezansi ezinhlamvu ze-alfabhethi.

[: phrinta:]

Izinhlamvu eziphrintiwe (izinhlamvu ezingekho izinhlamvu zokulawula.)

[: i-punct:]

Izinhlamvu zokubhala (izinhlamvu ezingekho incwadi, izinombolo, izinhlamvu zokulawula, noma izinhlamvu zesikhala).

[: isikhala:]

Izinhlamvu zesikhala (njengesikhala, ithebhu, nokufometha, ukubiza ezimbalwa).

[: phezulu:]

Izinhlamvu eziphezulu kakhulu zezinhlamvu ze-alfabhethi.

[: xdigit:]

Izinhlamvu eziyizinombolo ze-hexadecimal.

Isibonelo, ngaphambi kwezinga le-POSIX, ukufanisa izinhlamvu ze-alphanumeric, kuzodingeka ubhale / [A-Za-z0-9] / . Uma ngabe uhlamvu lwakho lube nolunye uhlobo lwezinhlamvu ezifakwe ohlwini lwezinhlamvu, lokhu ngeke kufane nabo, futhi uma uhlamvu lwakho lubekwe eceleni ngokungafani ne-ASCII, lokhu kungase kungalingani ngisho nezinhlamvu ze-ASCII ze-alphanumeric. Ngamakilasi wezinhlamvu ze-POSIX, ungabhala / [[: alnum:]] / , futhi lokhu kufana nezinhlamvu ze-alfabhethi nezinombolo ezinetheni zakho.

Ukulandelana okubili okukhethekile kungabonakala kuhlu lwamakheli. Lokhu kusebenza kumaqoqo omlingiswa okungewona we-ASCII, okungaba nezimpawu ezilodwa (ezibizwa ngokuthi izakhi zokulumbana ) ezimelelwe ngomlingiswa ongaphezu kweyodwa, kanye nezinhlamvu eziningana ezilinganayo zokugoqa , noma ukuhlunga, izinhloso. (Isibonelo, ngesiFulentshi, ithafa `` e '' ne-e-accented e` zilingana.)

Ama-Collating Symbols

Uphawu oludonsayo luyisici esinezinhlamvu ezihlukahlukene ezihlanganiswe ku- [. futhi .] . Isibonelo, uma i- ch iyilungu le-collating, i- [[. ch .]] Inkulumo evamile efana nalesi sici esixhumayo, ngenkathi [ch] inkulumo evamile efana no- c noma h .

Amakilasi afanayo

Isigaba esilinganiselwe igama elithile lendawo yohlu lwezinhlamvu ezilinganayo. Igama lifakwe ku- [= and =] . Isibonelo, igama le- e lingase lisetshenziselwe ukumela konke `` e, '' `` e ',' 'ne `` e`.' 'Kulesi simo, [= = = =] ukubonakaliswa okuvamile ihambisana nanoma iyiphi ye- e , e ' , noma e` .

Lezi zici zibaluleke kakhulu ezindaweni ezingakhulumi isiNgisi. Imisebenzi yamathalabhu ukuthi i- gawk isebenzisa ukufaniswa okuvamile okuboniswa njengamanje nje ikwazi ukubona amakilasi wezinhlamvu ze-POSIX; abaqapheli izimpawu zokugoqa noma amakilasi afanayo.

Ama-\ y , \ B , \ ,, \,, \ ' , \' , kanye \ '' opharetha aqondile ukuze ahlahlele ; ziyizandiso ezisekelwe ezakhiweni zamabhuku ezincwadi ezivamile ze-GNU.

Izinketho ezahlukene zemigqa yomyalo zilawula ukuthi i- gawk ihumusha kanjani izinhlamvu ngamazwi avamile.

Akukho okukhethwa kukho

Esikhathini esizenzakalelayo, i- gawk inikeza zonke izikhungo zezinkulumo ezivamile ze-POSIX nama-operators ajwayelekile we-GNU achazwe ngenhla. Noma kunjalo, izinkulumo zesikhathi asisekelwe.

--posix

Amazwi ajwayelekile we-POSIX kuphela asekelwayo, abaqhubi be-GNU abakhethekile. (Isibonelo, ihambisana nhlobo w ). Izinkulumo zokuvala zivunyelwe.

- izikhathi eziningana

Izinkulumo zendabuko ze-Unix awk ezijwayelekile zihambisana. Abaqhubi be-GNU akuzona ezikhethekile, izinkulumo zesikhashana azitholakali, futhi nanoma yiziphi izigaba zezinhlamvu ze-POSIX ( [:: alnum:]] njalo njalo. Izinhlamvu ezichazwe ngokulandelana kwe-octal ne-hexadecimal ziphathwa ngendlela efanele, ngisho noma zimelela ama-metacharacters ejwayelekile.

- isikhashana

Vumela izinkulumo zesikhashana ezinkulumweni ezivamile, noma ngabe -izinsuku ezinikeziwe.

Izenzo

Izitatimende zesenzo zifakwe kubhontshisi, { and } . Izitatimende zesenzo ziqukethe izitatimende ezijwayelekile zesabelo, ezinemibandela, nezokuthutha ezitholakala ezilimini eziningi. Ama-opharetha, ukulawula izitatimende, kanye nezitatimende zokufaka / ukukhipha ezitholakalayo zilandelwa emva kwalezo ezikuC.

Abasebenzisi

Ama-opharetha ku-AWK, ngokulandelana kokuqala kokuncipha, kukhona

( ... )

Ukuqoqa

$

Inkomba yezinsimu.

++ -

Ukunciphisa nokunciphisa, kokubili isiqalo kanye ne-postfix.

^

I-Exponentiation ( ** ingasetshenziswa futhi, futhi ** = kumsebenzi wesabelo).

+ -!

I-Unary plus, i-unary minus, ne-negation yokunganaki.

* /%

Ukuphindaphinda, ukwahlukana, kanye ne-modulus.

+ -

Ukwengeza nokususa.

isikhala

I-concatenation yomgqa.

<>

<=> =

! = == Opharetha abahlala njalo.

~! ~

Umdlalo wokuveza njalo, umdlalo ongathandeki. QAPHELA: Ungasebenzisi inkulumo evamile ( / foo / ) ngakwesokunxele se ~ ~ noma ! ~ . Sebenzisa kuphela ngakwesokunene. Inkulumo / foo / ~ exp inencazelo efanayo (($ 0 ~ / foo /) ~ exp ) . Ngokuvamile lokhu akulona okuhlosiwe.

ku

Ubulungu obuhle.

&&

I-ORIC AND.

||

KULUNGILE.

?:

Ukuboniswa kwemibandela ye-C. Leli fomu i- expr1 ? expr2 : expr3 . Uma i- expr1 iqinisile, inani lenkulumo liyi- expr2 , kungenjalo liyi- expr3 . Kuphela kwe- expr2 ne- expr3 kuhlolwa.

= + = - =

* = / =% = ^ = Isabelo. Kokubili isabelo ngokuphelele ( var = value ) kanye nesabelo-opharetha (amanye amafomu) asekelwa.

Izitatimende Zokulawula

Izitatimende zokulawula zimi kanje:

isitatimende uma ngabe ( isitatimende ) [ esinye isitatimende ] ngenkathi isitatimende sesitatimende ( isimo ) sisho isitatimende ngenkathi ( isimo ) sisho ( expr1 ; expr2 ; expr3 ) isitatimende se- ( var in array ) isitatimende siphumezela susa uhlu lokuphuma [ inkomba ] izitatimende }

Izitatimende ze-I / O

Izitatimende zokufaka / okukhiphayo zilandelayo:

vala ( ifayela [ , kanjani ] )

Vala ifayela, ipayipi noma inqubo. Okuzikhethela ukuthi kufanele kusetshenziswe kanjani kuphela lapho uvala umkhawulo owodwa wephayiphi emibili kwindlela yokusebenzisana. Kumele kube yinani lezinhlamvu, noma "kuya" noma "kusuka" .

i-getline

Setha i-$ 0 kusuka erekhodi lokufaka elilandelayo; setha iNF , NR , FNR .

Ifayela le- getline <

Setha u-$ 0 kusuka kwirekhodi elilandelayo lefayela ; setha i- NF .

u-getline var

Setha u- var kusuka kwirekhodi lokufaka elilandelayo; setha i- NR , i- FNR .

ifayela ye- getline var <

Setha u- var kusuka kwirekhodi elilandelayo lefayela .

umyalo | i-getline [ var ]

Ukuqalisa umyalo ukudonsa okukhiphayo ku $ 0 noma var , njengenhla.

umyalo | & getline [ var ]

Umlayezo ogijima njengendlela yokubambisana ukudonsa okukhipha ku $ 0 noma var , njengenhla. Ama-co-izinqubo yindlela yokwandiswa kwe- gawk .

Olandelayo

Yeka ukucubungula irekhodi lokufaka yamanje. Irekhodi lokufaka elilandelayo lifundwa futhi ukucubungula kuqala ngephethini yokuqala ohlelweni lwe-AWK. Uma ukuphela kwedatha yokufaka kufinyelelwe, i-block (s) END , uma ikhona, ibulawa.

i-nextfile

Yeka ukucubungula ifayela lokufaka yamanje. I-rekhodi yokufaka elandelayo yokufunda ivela efayeleni elilandelayo lokufaka. U-FILENAME no- ARGIND babuyekeziwe, i- FNR isethwe kabusha ku-1, futhi ukucubungula kuqala ngephethini yokuqala ohlelweni lwe-AWK. Uma ukuphela kwedatha yokufaka kufinyelelwe, i-block (s) END , uma ikhona, ibulawa.

phrinta

Iphrinta irekhodi yamanje. Irekhodi elikhiphayo linqanyuliwe ngenani loguquko lwe- ORS .

phrinta uhlu lwama-expr

Iphrinta izinkulumo. Inkulumo ngayinye ihlukaniswa nenani le- OFS eguquguqukayo. Irekhodi elikhiphayo linqanyuliwe ngenani loguquko lwe- ORS .

phrinta uhlu lwama-expr > ifayela

Iphrinta izinkulumo kwifayela . Inkulumo ngayinye ihlukaniswa nenani le- OFS eguquguqukayo. Irekhodi elikhiphayo linqanyuliwe ngenani loguquko lwe- ORS .

printf fmt, uhlu lwe-expr

Fometha bese uprinta.

printf fmt, expr-uhlu > ifayela

Fometha bese uprinta efayeleni .

uhlelo ( cmd-line )

Yenza umyalo we- cmd-line , bese ubuyisela isimo sokuphuma. (Lokhu kungase kungatholakali kumasevisi okungewona we-POSIX.)

fflush ( [ ifayela ]

Vula noma yikuphi ama-buffers ahlobene nefayili ephumayo noma ifayela lepayipi. Uma ifayela lingekho, ukukhishwa okujwayelekile kuvaliwe. Uma ifayili yinkambo engalingani, wonke amafayela okukhipha avulekile namapayipi anezibhamu zabo.

Ukuqondiswa kokukhipha okungeziwe kuvunyelwe ukuphrinta nokuphrinta .

phrinta ... >> ifayili

isebenzisa okukhiphayo kufayili .

phrinta ... | umyalo

ubhala epayipi.

phrinta ... | & umyalo

ithumela idatha kwinkqubo yokubambisana.

Umyalo we- getline ubuyisa 0 ekupheleni kwefayela futhi -1 ngephutha. Phezu kwesiphambeko, i- ERRNO iqukethe uchungechunge oluchaza inkinga.

QAPHELA: Uma usebenzisa ipayipi noma inqubo yokwenza ulayini , noma kusukela ekuphrintiwe noma ephrinta ngaphakathi kwe-loop, kumele usebenzise eduze () ukudala izimo ezintsha zomyalo. I-AW ayivala ngokuzenzakalelayo amapayipi noma ama-co-process lapho ebuyela e-EOF.

Isitatimende se-printf

Izinguqulo ze-AWK zesitatimende se- printf kanye nesenzo se-sprintf () bheka (bheka ngezansi) yamukela amafomethi okuchazwa okulandelayo:

% c

Umlingiswa we-ASCII. Uma ingxabano esetshenziselwa i- % c iyinombolo, iphathwa njengeyunithi futhi iphrintiwe. Uma kungenjalo, impikiswano icatshangwa ukuthi iyintambo, futhi uhlamvu lokuqala lolo chungechunge luyanyatheliswa.

% d , % i

Inombolo yedesimali (ingxenye enkulu).

% e,% E

Inombolo yephuzu elihambayo lefomu [-] d.dddddde [+ -] dd . Ifomethi ye- % E isebenzisa i- E esikhundleni se- e .

% f

Inombolo yephuzu elihambayo lefomu [-] ddd.dddddd .

% g,% G

Sebenzisa ukuguqulwa kwe- % e noma % f , noma yikuphi okufushane, nge-zeros ezingabalulekile ezingacindezelwe. Ifomethi ye- % G isebenzisa i- % E esikhundleni se- % e .

% o

Inombolo ye-octal engabhalisiwe (futhi inamba enkulu).

% u Isibalo esiphezulu se-decimal (futhi, inombolo).

% s

Uhlamvu lwezinhlamvu.

% x,% X

Inombolo ye-hexadecimal engabhalisiwe (inamba). Ifomethi ye- % X isebenzisa i- ABCDEF esikhundleni se- abcdef .

%%

Uhlamvu olulodwa % ; akukho ukuphikisana okuguqulwayo.

Ngokuzikhethela, imingcele eyengeziwe ingase ilale phakathi kwe- % kanye nencwadi yokulawula:

bala u-$

Sebenzisa ukubala kwe- 'th 'kuleli phuzu ekufomeni. Lokhu kubizwa ngokuthi i- specifier yokubeka isimo futhi kuhloswe ukuthi kusetshenziswe ikakhulukazi ekuhumusheni izinguqulo zamakhodi wefomethi, hhayi kumbhalo wangempela we-AWK. Kuyinto yokwandiswa kwe- gawk .

-

Le nkulumo kufanele ishiywe-ilungile ngaphakathi kwenkambu yayo.

isikhala

Ukuguqulwa kwezinombolo, amanani okuqala okuqala ngesikhala, namagugu angalungile ngesignali encane.

+

Isibonakaliso esengeziwe, esetshenziswe ngaphambi kokuguqula ububanzi (bheka ngezansi), ithi njalo uhlinzeka uphawu lokuguqulwa kwezinombolo, noma ngabe idatha ezofomathiwa ihle. I- + idlula isiphequluli sendawo.

#

Sebenzisa '`uhlobo oluthile' 'lwezinhlamvu ezithile zokulawula. Nge- % o , faka i-zero ehamba phambili. Kwama- % x , no- % X , nikeza i- 0x noma i- 0X eholela ngenhloso ye-nonzero. Ku- % e , % E , no- % f , umphumela uqukethe iphasiwedi. Kwama- % g , no- % G , ama-zeros alandelayo awasuswa kumphumela.

0

I- 0 ehamba phambili (i-zero) yenza njengefulegi, ekhombisa ukuthi okukhipha kufanele kube ne-zero esikhundleni sezithuba. Lokhu kusebenza ngisho namafomethi okukhipha okungafani nezinombolo. Leli flegi linomphumela lapho ububanzi bendawo bubanzi kunenani elizophrinta.

ububanzi

Insimu kufanele ifakwe kulokhu ububanzi. Insimu ngokuvamile igcwele izikhala. Uma ifulegi le- 0 lisetshenzisiwe, ligcwele ama-zero.

. okucacile

Inombolo ecacisa ukucacisa okuyoyisebenzisayo uma ushicilela. Ku- % e , % E , ne- % f ifomethi, lokhu kuchaza inombolo yamadijithi ofuna ukuyinyatheliswa ngakwesokudla kwephoyinti elidumile. Kwamafomu we- % g , no- % G , icacisa inani eliphakeme lamadijithi abalulekile. Ku % d , % o , % i , % u , % x , ne- % X ifomethi, icacisa inombolo encane yamadijithali ukuphrinta. Ku- % s , icacisa inombolo enkulu yezinhlamvu ezivela kuchungechunge okufanele ishicilelwe.

Ububanzi obushukumisayo nobukhulu bezinhlelo ze-ANSI C printf () zisekelwa. A * esikhundleni sobubanzi noma ukucacisa okucacile kubangela ukuthi amanani abo athathwe ohlwini lwamaqembu ukuphrinta noma ukuphrinta () . Ukuze usebenzise i-specifier ngesimo sobubanzi obunamandla noma ukucacisa, faka inani le- $ ngemuva kwe- * kwifomathi yefomethi. Isibonelo, "% 3 $ * 2 $. * 1 $ s" .

Amagama Efayela Ekhethekile

Lapho u-I / O ukubuyela emuva ukusuka kokuphrinta noma ukuphrinta kufinyelela kufayili, noma nge- getline kusuka efayeleni, i- gawk iyaqaphela amafayela athile akhethekile ngaphakathi. Lawa mafayili avumela ukufinyeleleka ukuvula abachazi befayela abazuzwe njengefa lomkhiqizo womzali (ngokuvamile igobolondo). Lawa mafayela wefayela angahle asetshenziswe emgqeni wokulayela ukubiza amafayela wedatha. Ama-filenames:

/ dev / stdin

Ukufaka okujwayelekile.

/ dev / stdout

Ukukhishwa okujwayelekile.

/ dev / stderr

Iphutha elijwayelekile lesiphutha.

/ dev / fd / n

Ifayela elihlobene nesichazamazwi sefayela evuliwe n .

Lezi ziwusizo ikakhulukazi kumilayezo yephutha. Ngokwesibonelo:

ukuphrinta "Uwuphule!" > "/ dev / stderr"

kuyilapho ungase udingeke usebenzise

ukuphrinta "Uwuphule!" | | "ikati 1> no-2"

Amafayili okukhethekile alandelayo angasetshenziswa nge- & co-process operator ngokudala uxhumano lwenethiwekhi ye-TCP / IP.

/ inet / tcp / lport / rhost / ukubhalisa

Ifayela lokuxhumeka kwe-TCP / IP kwendawo yokungena kwendawo yangakini ukuya kumuntu ohlala kude ehostela echwebeni elikude. Sebenzisa i-port ye- 0 ukuze uhlelo lukhethe ichweba.

/ inet / udp / lport / rhost / ukubhalisa

Ngokufanayo, kodwa sebenzisa i- UDP / IP esikhundleni se-TCP / IP.

/ inet / eluhlaza / lport / rhost / ukubhalisa

Igcinelwe ukusetshenziswa esikhathini esizayo.

Amanye amafayili amakheli akhethekile ahlinzeka ukufinyelela kolwazi mayelana nenqubo ye- gawk esebenzayo. Lawa mafayili manje asasebenzi. Sebenzisa uhlu lwe- PROCINFO ukuthola ulwazi abalunikezayo . Ama-filenames:

/ dev / pid

Ukufunda leli fayela libuyisela i-ID yenqubo yenkambiso yamanje, ekudwesimweni, ipheliswe nge-newline.

/ dev / ppid

Ukufunda leli fayela libuyisela i-ID yenqubo yomzali yenqubo yamanje, kudeimali, ipheliswe nge-newline.

/ dev / pgrpid

Ukufunda leli fayela libuyisela i-ID yenqubo yenkambiso yenqubo yamanje, kumademethri, ipheliswe nge-newline.

/ dev / umsebenzisi

Ukufunda leli fayela libuyisela irekhodi elilodwa eliqedwa nge-newline. Amasimu ahlukaniswe nezikhala. I-$ 1 yinani lekholi yesistimu ye- getuid (2), i-$ 2 yinani lekholi yesistimu ye- geteuid (2), i-$ 3 iyinzuzo ye- getgid (2) ikholi yesistimu, futhi i-$ 4 yinani le- getegid (2) ucingo lwesistimu. Uma kukhona izinkambu ezengeziwe, yi-ID yeqembu elibuyiselwe amaqembu amaqembu (2). Amaqembu amaningi angeke asekelwe kuzo zonke izinhlelo.

Imisebenzi yeNombolo

I-AW inezinhlelo zokusebenza ezilandelayo ezakhelwe ngaphakathi:

i-atan2 ( y , x )

Ibuyisela i-arctangent y / x kuma-radians.

i-cos ( expr )

Ibuyisela i-cosine ye- expr , engama-radians.

exp ( expr )

Umsebenzi wokucacisa.

int ( expr )

I-Truncates ukuze iphelele.

log ( expr )

Umsebenzi we-logarithm wemvelo.

i-rand ()

Ibuyisa inombolo engahleliwe phakathi kuka-0 no-1.

isono ( expr )

Ibuyisa i-sine ye- expr , engama-radians.

i-sqrt ( expr )

Umsebenzi wezimpande zesikwele.

srand ( [ expr ] )

Isebenzisa i- expr njengenzalo entsha ye-generator yenombolo engahleliwe. Uma kungekho i- expr enikeziwe, isikhathi sosuku sisetshenziswa. Inani lokubuya liyimbewu eyedlule ye-generator yenombolo engahleliwe.

Imisebenzi Yomsindo

I-Gawk inemisebenzi yocingo eyakhelwe ngaphakathi:

i-asort ( s [ , d ] )

Ibuyisa inombolo yezinto ezakhiweni zomthombo s . Okuqukethwe ku- s kuhlungwa kusetshenziswa imithetho evamile ye- gawk yokuqhathanisa amanani, futhi izinkomba zamagugu ahlelwe s zifakwa esikhundleni se-integers ezilandelanayo ziqala nge-1. Uma i-array ekhethiwe yokuhamba d ichaziwe, ngakho-ke iqala ngokuphindaphinda ibe d , bese-ke ihlungwa, ishiya izinkomba zendawo yomthombo ingaguquki.

abantuub ( r , s , h [ , t ] )

Cinga uchungechunge olubhekiswe kulokhu okusetshenziselwa ukufaniswa okuvamile r . Uma h iyunithi yezinhlamvu eqala ngo- g noma i- G , bese ubeka yonke imifino ka- r nge- s . Uma kungenjalo, h iyinombolo ekhombisa ukuthi imuphi u- r okumele uyithathe esikhundleni. Uma ngabe kunganikezwa, i-$ 0 isetshenziselwa esikhundleni. Ngaphakathi kwetheksthi yokufaka esikhundleni, ukulandelana \ n , lapho n idijithi kusuka ku-1 kuya ku-9, ingasetshenziselwa ukukhombisa nje umbhalo ohambelana nokuziphendulela kobuhlanga obuningi. Ukulandelana \ 0 kubonisa wonke umbhalo ohambelanisiwe, njengoba kwenza uhlamvu & . Ngokungafani ne- sub () ne- gsub () , i-string modified ibuyiselwa njengomphumela womsebenzi, futhi uchungechunge lwama-original aluguquki.

i-gsub ( r , s [ , t ] )

Ngomunye umlinganiso ohambelana nesikhathi esivamile r ocingweni t , faka i-string s , bese ubuyela inombolo yezingxenye ezilandelayo. Uma ngabe inganikiwe, sebenzisa i-$ 0 . I & in the text substitution ishintshwe ngombhalo owawufanelwe ngempela. Sebenzisa \ & ukuthola i-literal & . (Lokhu kumele kufakwe njengo- "\\ &" ; bheka i- GAWK: Uhlelo olusebenzayo lwe-AWK ukuze uthole ingxoxo ephelele yemithetho ye- & s kanye nokuhlehliswa kombhalo esikhundleni sendawo encane () , gsub () , kanye nabantuub () .)

inkomba ( s , t )

Ibuyisa inkomba yezintambo t ku-string, noma 0 uma ingekho. (Lokhu kusho ukuthi izinhlamvu zomlingisi ziqala ngenye.)

Ubude ( [ s ] )

Ibuyisa ubude bezintambo , noma ubude buka- $ 0 uma bungahlinzekiwe.

ukufanisa ( s , r [ , a ] )

Ibuyisa isikhundla s lapho okuvela khona okuvamile r , noma 0 uma r engekho, futhi ibeka amanani ka- RSTART no- RLENGTH . Qaphela ukuthi ukuhlelwa kwe-argument kufana ne-opharetha: i- strut . Uma uhlela ahlinzekwa, kukhishwa futhi izakhi 1 kuya n zigcwele izingxenye zika- s ezifanisa nokuzivocavoca okuhambisana nomzali ngokuhambisana nalokho. Isici sesi-0 se - iqukethe isabelo s esifana naso sonke isenzo r .

hlukana ( s , a [ , r ] )

Udlahla izintambo zibekwe ohlwini oluvamile r , futhi abuyisele inombolo yamasimu. Uma r ishiyiwe, i- FS isetshenziselwa esikhundleni. I-array isusiwe kuqala. Ukuthungatha kuziphatha ngokufanayo ukuhlukanisa insimu, kuchazwe ngenhla.

i-sprintf ( fmt , uhlu lwe- expr )

Iphrinta i-expr-uhlu ngokusho kwe- fmt , futhi ibuyisela uchungechunge olulandelayo.

i-strtonum (c )

Ihlola i- str , iphinde ibuyise inani layo lenani. Uma i- str iqala nge- 0 ehamba phambili, i- strtonum () ithatha ukuthi i- str iyinombolo yama-oct. Uma i- str iqala ngo- 0x noma i- 0X ehamba phambili, i- strtonum () ithatha ukuthi i- str iyinombolo ye-hexadecimal.

i-sub ( r , s [ , t ] )

Njenge- gsub () , kodwa kuphela okuyisisekelo sokufana esifanayo kufakwe esikhundleni.

i-substr ( s , i [ , n ] )

Ibuyisa okungaphezulu kwesichazamazwi se- s kusukela ku- i . Uma i ishiyiwe, konke okusetshenziswayo kuyasetshenziswa.

i-tolower ( str )

Ibuyisela ikhophi yocingo yezintambo, nazo zonke izinhlamvu ezingenhla e- str ezihunyushwe kubalingani bazo abaphansi. Izinhlamvu ezingezona ze-alphabetic ezishiywe zingashintshi.

i-toupper ( str )

Ibuyisa ikhophi yocingo yezintambo, nazo zonke izinhlamvu ezingezansi- c in i- str ehunyushwe kubalingani bazo abahamba phambili. Izinhlamvu ezingezona ze-alphabetic ezishiywe zingashintshi.

Imisebenzi Yesikhathi

Njengoba enye yokusetshenziswa okuyinhloko kwezinhlelo ze-AWK icubungula amafayela e-log aqukethe ulwazi lwesitembu sesikhathi, i- gawk inikeza imisebenzi elandelayo ukuthola izitembu zesikhathi nokufometha.

i-mktime ( datespec )

Iguqula i- datespec esikhathini esisitembu sesifomu esifanayo sokubuyiselwa nge- systime () . I- datespec iyunithi yefomu yeYYYY MM DD HH MM SS [DST] . Okuqukethwe kwezintambo kukhona izinombolo eziyisithupha noma eziyisikhombisa ezimele ngokulandelana ngonyaka ogcwele kuhlanganise nekhulu, inyanga kusukela ku-1 kuya ku-12, usuku lwenyanga kusukela ku-1 kuya ku-31, ihora lusuku kusuka ku-0 kuya ku-23, iminithi kusuka ku-0 kuya ku- 59, neyesibili kusuka ku-0 kuya kwezingu-60, kanye nefolda yokugcina ilanga lokuzikhethela. Amanani walezi zinombolo akudingeki abe phakathi kwezintambo ezichazwe; isibonelo, ihora le--1 lisho ihora elilodwa ngaphambi kwamabili. Ikhalenda elivela ekuqaleni-Gregorian lithathwa, ngonyaka unyaka owedlule 1 nonyaka -1 ngonyaka owedlule 0. Isikhathi sithathwa njengesikhathi sendawo. Uma ifulege lokugcina ilanga lihle, isikhathi sithathwa njengesikhathi sokulondoloza imini; uma i-zero, isikhathi sithathwa njengesikhathi esijwayelekile; futhi uma kungalungile (okuzenzakalelayo), i- mktime () izama ukucacisa ukuthi isikhathi sokulondoloza ilanga sisebenza ngesikhathi esibekiwe. Uma i- datespec ayinalo izakhi ezanele noma uma isikhathi esiphelele singekho , i- mktime () ibuyisa -1.

i-strftime ( [ ifomethi [ , isitembu sesikhathi ]] )

Ukufometha isitembu samathuluzi ngokusho kwefomethi ngesakhiwo. I- timestamp kufanele ibe yifomu efanayo ebuyiswe yi- systime () . Uma isitembu sesikhathi sishoda, isikhathi samanje sosuku sisetshenzisiwe. Uma ifomethi ingekho, ifomethi ezenzakalelayo elingana nokukhishwa kwosuku (1) isetshenzisiwe. Bona incazelo ye- strftime () umsebenzi ku-ANSI C ngokuguqulwa kwendlela okuqinisekisiwe ukuthi iyatholakala. I-public-domain version ye- strftime (3) nekhasi lomuntu ngoba liza ne- gawk ; uma leyo nguqulo isetshenziselwa ukwakhiwa kwe- gawk , ngakho konke ukuguqulwa okuchazwe kulelo khasi lomuntu kuyatholakala ukuze kutholakale.

i-systime ()

Ibuyisa isikhathi samanje sosuku njengombalo wamasekhondi kusukela ku-Epoch (1970-01-01 00:00:00 UTC nge-POSIX izinhlelo).

Ukubambezeleka okuncane kwemisebenzi

Ukuqala nge-version 3.1 ye- gawk , imisebenzi elandelayo yokunyakaza kancane iyatholakala. Zisebenza ngokuguqula amagugu amancane okuzulazula amaphuzu angenawo wonke ama- integers amade angabhalisiwe , enza umsebenzi, bese eguqula umphumela emuva endaweni ehambileyo. Imisebenzi yilezi:

futhi ( v1 , v2 )

Buyisa okungahambisani Namazinga anikezwe yi- v1 ne- v2 .

i-compl ( val )

Buyisa ukuxhaswa kancane kwe- val .

i-lshift (i- val , ibala )

Buyisa inani le- val , lihanjiswe ngakwesobunxele ngokubala izinkinobho.

noma ( v1 , v2 )

Buyisela kancane noma amanani anikezwe yi- v1 ne- v2 .

i-rshift (i- val , ibala )

Buyisa inani le- val , lihanjiswe ngqo ngokubala izinkinobho.

i-xor ( v1 , v2 )

Buyisa i-XOR ehamba kancane yamanani anikezwe yi- v1 ne- v2 .

Imisebenzi yomhlaba jikelele

Ukuqala nge-version 3.1 ye- gawk , imisebenzi elandelayo ingase isetshenziswe ngaphakathi kwenkqubo yakho ye-AWK yokuhumusha izintambo ngesikhathi sokugijima. Ukuze uthole imininingwane egcwele, bheka i- GAWK: Uhlelo olusebenzayo lwe-AWK .

bindtextdomain ( isiqondisi [ , isizinda ] )

Icacisa isiqondisi lapho igalawk ibheka amafayela we-.mo , uma kungenjalo noma ngeke ibekwe ezindaweni `` standard '' (isib., Ngesikhathi sokuhlola). Ibuyisa isiqondisi lapho i- domain ethi `` iboshiwe. ''

Isizinda esizenzakalelayo sinenani le- TEXTDOMAIN . Uma isiqondisi kungumzila ongenawo wonke ( "" " ), khona-ke i- bindtextdomain () ibuyisela ukubopha kwamanje kwesizinda esinikeziwe.

i-dcgettext ( string [ , domain [ , isigaba ]] )

Ibuyisa ukuhumusha kwezintambo kusizinda sesizinda sesizinda sesigaba sesigaba sendawo . Inani elizenzakalelayo le- domain liyigugu lamanje le- TEXTDOMAIN . Inani elizenzakalelayo lesigaba "LC_MESSAGES" .

Uma unikezela inani lesigaba , kufanele kube uchungechunge olulingana nolunye lwezigaba eziyaziwayo ze-locale ezichazwe ku- GAWK: Uhlelo olusebenzayo lwe-AWK . Kumele futhi unikeze isizinda sombhalo. Sebenzisa i- TEXTDOMAIN uma ufuna ukusebenzisa isizinda samanje.

dcngettext ( string1 , string2 , inombolo [ , domain [ , isigaba ]] )

Ibuyisela ifomu lesibuningi elisetshenziselwa inombolo yokuhumusha kwe- string1 ne- string2 kwisizinda sesizinda sesizinda sesigaba sesigaba sendawo . Inani elizenzakalelayo le- domain liyigugu lamanje le- TEXTDOMAIN . Inani elizenzakalelayo lesigaba "LC_MESSAGES" .

Uma unikezela inani lesigaba , kufanele kube uchungechunge olulingana nolunye lwezigaba eziyaziwayo ze-locale ezichazwe ku- GAWK: Uhlelo olusebenzayo lwe-AWK . Kumele futhi unikeze isizinda sombhalo. Sebenzisa i- TEXTDOMAIN uma ufuna ukusebenzisa isizinda samanje.

IMISEBENZI YOKUSEBENZA USER-DEFINED

Imisebenzi e-AWK ichazwa kanje:

Igama lomsebenzi ( uhlu lwepharamitha ) { izitatimende }

Imisebenzi yenziwa uma ibizwa kusuka ngaphakathi kwezingqikithi kumaphethini noma izenzo. Imingcele yangempela ehlinzekwe ngocingo lomsebenzi isetshenziselwa ukufaka imingcele yemingcele ehlelwe emisebenzini. Ama-arrays adluliselwa ngokubhekisela, ezinye izinguquko zidluliselwa ngokubaluleka.

Njengoba imisebenzi engeyona ingxenye yolimi lwe-AWK, ukuhlinzekwa kokuguquguquka kwendawo kunalokho kuyinkimbinkimbi: Kuthiwa njengemingcele eyengeziwe ohlwini lwepharamitha. Umhlangano ukuhlukanisa ukuhlukahluka kwendawo kusuka kwimingcele yangempela yizikhala ezengeziwe ohlwini lwamapharamitha. Ngokwesibonelo:

umsebenzi f (p, q, a, b) # a kanye b bendawo {...} / abc / {...; f (1, 2); ...}

I-parenthesis yesokunxele efonini yomsebenzi iyadingeka ukuba ilandele ngokushesha igama lomsebenzi, ngaphandle kwesikhala esimhlophe esimaphakathi. Lokhu ukugwema ukungaqondakali kokwenziwa kwe-synactic nomqhubi we-concatenation. Lo mkhawulo awusebenzi emisebenzini eyakhelwe ngaphakathi ngenhla.

Imisebenzi ingashayela omunye nomunye futhi ingahle ivuselele. Imigomo yemisebenzi esetshenziselwa ukuguquguquka kwendawo isungulwa kwizintambo ezingenalutho kanye nenombolo yocingo ngesikhathi sokucela ukusebenza.

Sebenzisa i- expr yokubuyisa ukubuyisela inani kusuka emsebenzini. Inani lokubuyiselwa alichaziwe uma kungekho nani elinikeziwe, noma uma umsebenzi ubuyela ngo `` ukuwa '' ekupheleni.

Uma -kunikezelwe , i- gawk ixwayisa ngamakholi kumisebenzi engaqondakali ngesikhathi sesikhathi, kunesikhathi sokugijima. Ukushayela umsebenzi ongaqondwanga ngesikhathi sokugijima kuyiphutha elibulalayo.

Igama elithi func lingasetshenziswa endaweni yomsebenzi .

UKUQALA OKUQALA IMISEBENZI ENTSHA

Kusukela nge-version 3.1 ye- gawk , ungakwazi ukwengeza ngokuzenzakalelayo imisebenzi entsha eyakhelwe ngaphakathi kumhumushi we-gawk osebenzayo. Imininingwane egcwele ingaphezu kwekhasi leli khasi; bheka i- GAWK: Uhlelo olusebenzayo lwe-AWK lwemininingwane.

isandiso ( into , umsebenzi )

Xhumanisa ngokuqinile ifayela lezinto elibiwe elibizwa ngokuthi into , futhi ucele umsebenzi kuleyo nto, ukwenza ukuqaliswa. Laba bobabili kufanele banikezwe njengezintambo. Ibuyisela inani elibuyiswe ngomsebenzi .

Lo msebenzi unikezwe futhi ulotshwe ku- GAWK: Uhlelo lokusebenza oluphumelelayo lwe-AWK , kodwa konke mayelana nalesi sici cishe kuzoshintsha ekukhululweni okulandelayo. Sincoma ukuthi ungasebenzisi lesi sici kunoma yini ongafuni ukuyibuyisela kabusha.

Izimpawu

i-pgawk yamukela izimpawu ezimbili. I-SIGUSR1 ibangela ukuthi ilahle iphrofayili nokusebenza kokufaka ucingo kwifayili yephrofayela, okungaba ngu- awkprof.out , noma ngabe yiliphi ifayela elibizwa nge-i- profile option. I-ke iyaqhubeka isebenza. I-SIGHUP ibangela ukuthi ilahle iphrofayili kanye nokusebenza komshini wokufaka ucingo bese uphuma.

EXAMPLES

Phrinta bese uhlunga amagama angena ngemvume kuwo wonke abasebenzisi: BEGIN {FS = ":"} {phrinta $ 1 | "thayipha"} Bala imigqa efayeleni: {nlines ++} END {phrinta nlines} Lungisa umugqa ngamunye ngenombolo yayo efayeleni: {phrinta FNR, $ 0} Concatenate nenombolo yombhalo (ukuhluka kwetheyimu): {phrinta i-NR, $ 0}

Ukungena ngaphakathi

Izindinganiso zensimbi zilandelana kwezinhlamvu ezifakiwe ezicaphuni ezimbili. Ezindaweni ezingezona isiNgisi, kungenzeka ukuphawula izintambo ohlelweni lwe-AWK njengokudinga ukuhumusha ulimi lwendalo lwendalo. Izintambo ezinjalo ziphawulwe ohlelweni lwe-AWK nge-undresscore ehamba phambili (`` _ ''). Ngokwesibonelo,

gawk 'BEGIN {phrinta "hello, umhlaba"}'

njalo iprint hello, umhlaba . Kodwa,

gawk 'QALA {phrinta _ "hello, umhlaba"}'

angaphrinta bonjour, izwe eFrance.

Kunezinyathelo eziningana ezithintekayo ekwakhiweni nasekusebenzeni uhlelo lwe-AWK localizayo.

1.

Engeza isinyathelo se- BEGIN ukuze unikeze inani ku- TEXTDOMAIN variable ukuze usethe isizinda sombhalo egameni elihlotshaniswa nohlelo lwakho.


QALA {TEXTDOMAIN = "myprog"}

Lokhu kuvumela igalaji ukuthola ifayela le-.mo ehlotshaniswa nohlelo lwakho. Ngaphandle kwalesi sinyathelo, i- gawk isebenzisa i-domain text text domain, okungenzeka ingenayo izinguqulo zohlelo lwakho.

2.

Maka zonke izintambo okufanele zihunyushwe ngokugxila phambili.

3.

Uma kunesidingo, sebenzisa imisebenzi ye- dcgettext () kanye / noma ye- bindtextdomain () ohlelweni lwakho, njengoba kufanelekile.

4.

Run gawk --gen-po -f myprog.awk> myprog.po ukudala ifayela le- .po lenhlelo yakho.

5.

Nikeza izihumusho ezifanele, futhi wakhe futhi ufake ifomethi ye-.mo ehambelanayo.

Izici zomhlaba jikelele zichazwe ngemininingwane egcwele ku- GAWK: Uhlelo olusebenzayo lwe-AWK .

Ukuhambisana kwePosix

Umgomo oyinhloko we- gawk ukuhambisana nezinga le-POSIX, kanye nenhlobo yakamuva ye-UNIX awk . Kulokhu, i- gawk ihlanganisa izici ezilandelayo ezibonakalayo zomsebenzisi ezingachazwanga encwadini ye-AWK, kodwa ziyingxenye ye-Bell Laboratories version ye- awk , futhi isezingeni eliphansi le-POSIX.

Le ncwadi ibonisa ukuthi isabelo somugqa wendandatho esenzakalelayo senzeke uma i- awk ingavula ingxabano njengefayela, okulandela ngemuva kwe- BEGIN block. Noma kunjalo, ekusebenziseni kwangaphambili, lapho isabelo esinjalo sibonakala ngaphambi kwamanye amagama wefayela, isabelo sizokwenzeka ngaphambi kokuthi i - BEGIN ibhulogi isebenze. Izicelo zithembele kulesi sici ``. '' Uma i- awk ishintshaniswa ukufanisa amadokhumenti ayo, ukhetho lwe-- v lokunikeza izinto eziguquguqukayo ngaphambi kokukhishwa kohlelo lwenziwe ukwamukela izinhlelo zokusebenza ezixhomeke ekuziphatheni okudala. (Lesi sici savunyelwa yiBell Laboratories kanye nabathuthukisi be-GNU.)

I -W okukhethwa kukho okusetshenziselwa ukufaka izici ezithile ezivela ku-standard POSIX.

Uma ucubungula izimpikiswano, i- gawk isebenzisa ukhetho olukhethekile `` - '' ukubonisa ukuphela kwezimpikiswano. Ngokuvumelanisa imodi, ixwayisa mayelana kodwa kodwa inganaki izinketho ezingafakiwe. Ekusebenzeni okujwayelekile, iziphakamiso ezinjalo zidluliselwa ohlelweni lwe-AWK ukuze lusebenze.

Ibhuku le-AWK alichazi inani lokubuya le- srand () . Izinga le-POSIX libuyisela inzalo ayisebenzisayo, ukuvumela ukugcina ithrekhi yokulandelana kwenombolo okungahleliwe. Ngakho-ke srand () in gawk ubuyekezela imbewu yayo yamanje.

Ezinye izici ezintsha: Ukusetshenziswa kwezinketho eziningi -f (kusuka kuMKS awk ); i- ENVIRON ; i- \ a , futhi \ v ibalekela ukulandelana (okwenziwe ekuqaleni kwendwangu futhi ibuyisele emuva ku-Bell Laboratories version); imisebenzi ye- tolower () ne- toupper () eyakhelwe ngaphakathi (kusukela ku-Bell Laboratories version); kanye nokucaciswa kwe-ANSI C ku- printf (okwenziwe kuqala ku-Bell Laboratories version).

Izici zomlando

Kunezici ezimbili zomsebenzi we-AWK womlando osekelayo we-gawk . Okokuqala, kungenzeka ukubiza ubude () umsebenzi okwakhiwe ngaphakathi hhayi nje ngaphandle kokuphikisana, kodwa ngisho ngaphandle kokuxoxisana! Ngakho,

a = ubude # i-Holy Algol 60, i-Batman!

kufana nalokhu

a = ubude ()
a = ubude ($ 0)

Lesi sici sibhalwe ngokuthi `` sichithwe '' esimisweni se-POSIX, futhi igalawk iphakamisa isixwayiso mayelana nokusetshenziswa kwayo uma - i- intanethi icacisiwe emgqeni womyalo.

Esinye isici ukusetshenziswa noma ukuqhubeka noma izitatimende zekhefu ngaphandle komzimba wesikhathi esithile , noma, noma ukwenza i- loop. Ukusetshenziswa kwe-AWK yendabuko kuye kwaphatha ukusetshenziswa okunjalo njengokulingana nesitatimende esilandelayo . IGawk isekela lokhu ukusetshenziswa uma -izinsuku zicacisiwe.

Izandiso ze-GNU

I-Gaw inezinombolo zezandiso ku-POSIX awk . Bachazwa kulesi sigaba. Zonke izandiso ezichazwe lapha zingakhutshazwa yi- gawk ekhangayo ne-option option.

Izici ezilandelayo ze- gawk azitholakali ku-POSIX awk .

*

Ayikho yokusesha indlela eyenziwa amafayela abizwa nge-- f inketho. Ngakho-ke ukuhlukahluka kwe- AWKPATH yemvelo akuyona into ekhethekile.

*

Ukulandelana \ x kokuphunyuka. (Ikhutshaziwe nge -posix .)

*

Umsebenzi we- fflush () . (Ikhutshaziwe nge -posix .)

*

Ikhono lokuqhubeka imigqa emva ? futhi :. (Ikhutshaziwe nge -posix .)

*

Izindinganiso ze-Octal ne-hexadecimal ezinhlelweni ze-AWK.

*

Ama- variables we-ARGIND , BINMODE , ERRNO , LINT , RT kanye ne- TEXTDOMAIN awawusizo .

*

Ukuhlukahluka kwe- IGNORECASE kanye nemiphumela emibi ayitholakali.

*

Ukuhlukaniswa kwensimu ye-FIELDWIDTHS nokulingana okubanzi .

*

I- PROCINFO uhlu alutholakali.

*

Ukusetshenziswa kwe- RS njengento ejwayelekile.

*

Amagama wefayela elikhethekile atholakalayo ukubuyela emuva kwe-I / O awaqapheli.

*

I | i- opharetha ngokudala izinqubo zokusebenzisana.

*

Ikhono lokuhlukanisa abalingiswa ngabanye besebenzisa i-string yangenhla njengenani le- FS , futhi njengengxabano yesithathu yokuhlukanisa () .

*

I-argument yesibili yokuzikhethela emsebenzini wokuvala () .

*

I-argument yesithathu yokuzikhethela kumsebenzi wokufanisa () .

*

Ikhono lokusebenzisa ama-specifiers nge- printf ne- sprintf () .

*

Ukusetshenziselwa ukususa okuhlangene ukuze ususe konke okuqukethwe kohlu.

*

Ukusebenzisa i- nextfile ukuyeka ukucubungula ifayela lokufakwayo lamanje.

*

I- and () , i- asort () , i- bindtextdomain () , i- compl () , i- dcgettext () , folub () , i- lshift () , i- mktime () , noma () , i- rshift () , i- strftime () , i- strtonum () , i- systime () kanye ne- xor () imisebenzi.

*

Izintambo ezikhona.

*

Ukwengeza imisebenzi emisha eyakhelwe ngaphakathi ngokunamandla ngokusebenza (extension) .

Ibhuku le-AWK alichazi inani lokubuya lomsebenzi wokuvala () . Ukuvala kweGawk () kubuyisela inani kusukela ku- fclose (3), noma pclose (3), uma uvala ifayela lokukhipha noma ipayipi, ngokulandelana. Ibuyisa isimo sokuphuma kwesistimu uma uvala ipayipi yokufaka. Inani lokubuyisa li--1 uma ifayela elibizwa ngokuthi, i-pipe noma inqubo-nqubo ayivuliwe nge-redirection.

Uma i- gawk isetshenziselwa inketho - yesikhashana , uma ingxabano ye- fs e-- F inketho ethi `` t '', i- FS isethwe kumlingisi wethebhu. Qaphela ukuthi ukuthayipha i- gawk -F \ t ... kubangele ukuthi igobolondo icaphune `` t, '', futhi ayidluli `` \ t '' ku -F option. Njengoba lokhu kuyisimo esikhethekile esibi, akuyona ukuziphatha okuzenzakalelayo. Lokhu kuziphatha akukwenzeki uma - i- postx icacisiwe. Ukuze uthole umlingisi wethebhu ngempela njengomhlukanisi wensimu, kungcono ukusebenzisa izingcaphuno ezilodwa: gawk -F '\ t' ....

Bheka eminye imiyalo : linda , lp , ugcwalise , ufeze , uhlanganise , u- ioctl , uniq , rmmod , pvcreate , rsh , unix2dos , cal , fs , cd , iwpriv , swapon , autofs , inkulumo , i- motd , mahhala , i- lpr , i- execl , i- fdisk , i- ku , ngubani , iwconfig , ifconfig , i- vgdisplay , ivulekile , i- lsmod , i- hhs , i- mailq , ibulawe , i- wtmp