Funda i-Linux Command - gawk

Igama

ukuhlaziya iprogram kunye nokusetyenziswa kolwimi

Isiqendu

gwk [i-POSIX okanye i-GNU style options] -f program-file [ - ] ifayile ...
gwk [i-POSIX okanye i-GNU style options] [ - ] ifayile yecatshulwa yenkqubo ...

ipgawk [i-POSIX okanye i-GNU style options] -f program-file [ - ] ifayile ...
i-pgawk [i-POSIX okanye i-GNU style options] [ - ] ifayile yecatshulwa yenkqubo ...

Inkcazo

I-Gawk kukuphunyezwa kweProjekthi ye- GNU yolimi lwenkqubo ye-AWK. Iyahambelana nencazelo yolwimi kwi-POSIX 1003.2 uLwimi loLwimi kunye neeNkqubo zokuSebenza. Le nguqulo isekelwe kwingcaciso kwiLwimi yoLungiselelo lwe-AWK , ngo-Aho, iKernighan, kunye ne-Weinberger, kunye neenkcukacha ezongezelelweyo ezifumaneka kwi-System V Release 4 version ye-UNIX awk . I-Gawk inikezela ngokubanzi izandiso ze-Bell Laboratories, kunye neenombolo ezongezelelweyo ze-GNU.

I-Pgawk inguqu yenkcazo ye- gawk . Kuyafana ngazo zonke iindlela ukukhangela , ngaphandle kokuba iiprogram zihamba ngokukhawuleza, kwaye ivelise ngokuzenzekelayo iphrofayili yokuqhuba kwifayile ye- awkprof.out xa yenziwe. Jonga i-option profile , ngezantsi.

Umgca wemiyalelo unemiqathango yokwenza i- gawk ngokwayo, i-AWK yecatshulwa yenkqubo (ukuba ayinakunikezwa nge-- f okanye -fayile yeefayile ), kunye nezithethe ziya kufumaneka kwi- ARGC kunye ne- ARGV ezichazwe ngaphambili ezichaziweyo ze-AWK.

Ifomathi yokukhetha

Izinketho zeGawk zinokuba zikhetho ze-POSIX enye zeetekisi, okanye i-GNU isithuba eside. Izinketho zePOSIX ziqala ngolunye '`-' ', ngelixa iinketho ezide ziqala nge` `-' '. Izinketho ezide zinikezelwa kwiinkalo ezithile ze-GNU kunye neempawu ezigunyaziwe zePOSIX.

Ukulandela umgangatho we-POSIX, ukhetho lwe-gawk -specific lunikezwa ngeengxabano kwi-- W inketho. Izinketho ezininzi -U zinokunikezelwa nganye -Okhetho lunokukhetha olude olude, njengoko kuchaziwe ngezantsi. Iziphakamiso kwiindlela ezide zidibaniswe kunye nenketho ngu = uphawu, kungekho zithuba zokungenela, okanye zinokubonelelwa kwingxabano elandelayo yomgca womyalelo. Izinketho ezide zinokuthi zifakwe kwiincinci, ngokukhawuleza ukuba isicatshulwa sihlala sisodwa.

Khetha

I-Gawk yamkela ezi zikhethi zilandelayo, zidweliswe nge-alphabetically.

-F fs

I- fs -separator fs Sebenzisa i- fs kwi-field separator (ixabiso le- FS eguqulelwe ngaphambili).

-v var = val

- vumela var = val Banike ixabiso lentsimbi kwi-variable variable var , ngaphambi kokuphunyezwa kwenkqubo. Izixabiso ezinjalo eziguquguqukayo ziyafumaneka kwi- BEGIN ibhloko yeprogram ye-AWK.

-f program-file

Inkqubo-fayile funda umthombo weprogram ye-AWK kwiprogram yefayili -fayile , endaweni ye-argument yokuqala yomyalelo wokuqala. Izinketho ezininzi -f (okanye -fayile ) zingasetyenziswa.

-mf NNN

-mr NNN Beka imida yememori eyahlukeneyo kwixabiso leNNN . Iflegi yeeflegi isekela inani eliphezulu lamasimi, kwaye i-flag ibonisa ubungakanani bendawo yokurekhoda. Ezi ziflegi ezimbini kunye ne-- m option zivela kwi-Bell Laboratories yophando lwe- UNIX awk . Azinakunyanzelwanga yi- gawk , kuba i- gawk ayinayo imida echazwe ngaphambili.

-W compat

-Imveli

--compat

Ukusebenza kwexesha elifanelekileyo kwimodi yokuhambelana . Ngendlela yokuhambelana, i- gawk iziphatha ngokufanayo kwi- UNIX awk ; akukho zandiso ezithile ze-GNU ziyabonwa. Ukusetyenziswa kwezinto - ezikhethiweyo zikhethwa ngaphezu kwezinye iifom zolu khetho. Bona i- GNU EXTENSIONS , ngezantsi, ngolwazi olungaphezulu.

-Webyleft

-W copyright

--copyleft

--copyright Phrinta ingcaciso emfutshane yomyalezo wolwazi lobunikazi be-GNU kwimveliso epheleleyo kwaye uphume ngempumelelo.

-Ukuguquka kwezinto ezikhoyo [ = ifayile ]

- dump-variables [ = ifayile ] Phrinta uludwe oluhlelweyo lwezinto eziguquguqukayo zehlabathi, iintlobo zazo kunye neenqobo zokugqibela ezifayile. Ukuba akukho fayile inikwe, i- gawk isebenzisa ifayile enegama elingu-awkvars.out kwirejista yangoku.

Ukuba uluhlu lwezinto zonke eziguquguqukayo zomhlaba yindlela efanelekileyo yokujonga iimpazamo ze typographical kwiiprogram zakho. Uyakusebenzisa kwakhona olu khetho ukuba unenkqubo enkulu enemi sebenzi emininzi, kwaye ufuna ukuqiniseka ukuba imisebenzi yakho ayisebenzisi ngokungafaniyo ukuguquguquka kwehlabathi okwakuthiwa ube yindawo. (Le mpazamo elula ngokukodwa yokwenza ngamagama aguquguqukayo anjenge- i , j , njalo njalo.)

-Nceda

-Usebenzisa

--Nceda

Ukushicilela isishwankathelo esifutshane sezinto ezikhoyo kwi-output standard. ( NgokweMigangatho yeCoding Coding , ezi zikhetho zidala ukuphuma ngokukhawuleza.)

-Wint [ = fatal ]

-lint [ = fatal ] Nikeza izilumkiso malunga nokwakhiwa okungenakucatshulwa okanye okungekho ukuphatheka kwamanye amalungiselelo. Ngempikiswano yokuzikhethela yezixwayiso ezibulalayo , izilumkiso ziba ziphoso ezibulalayo. Oku kunokuba nzima, kodwa ukusetyenziswa kwayo kuya kukhuthaza ukuphuhliswa kweenkqubo ezicocileyo ze-AWK.

-Win old-ubudala

Umdala onobudala Unika izilumkiso malunga nezakhiwo ezingabonakaliyo kwiinguqulelo zangaphambili ze Unix awk .

-W gen-po

- scan-po kwaye ujikeleze inkqubo ye-AWK, kwaye uvelise iFayile yefom yefayile kwifom yezantsi kunye nezifakelo zazo zonke iinkalo ezikhoyo kwiprogram. Inkqubo ngokwayo ayiyi kuqhutywa. Bona ukunikezelwa kwe-GNU ngokufumana ulwazi olungaphezulu kwiifayile ze .po .

-A engekho yedatha yedatha

Idatha-decimal-decimal Idatha Ukuqonda ixabiso le-octal kunye ne-hexadecimal kwi-data yenkalo. Sebenzisa le ndlela ngokulumkisa!

-Ixhasi

--posix Oku kuphendukela kwimodi yokuhambelana , kunye nale miqobo elandelayo eyongezelelweyo:

*

\ x ukulandelwa kokulandelwa akubonakali.

*

Isikhundla kuphela kunye nethebhu isebenza njengabahluli bezandla xa i- FS isetyenziswe kwisithuba esinye, i-newline ayikho.

*

Awukwazi ukuqhubeka nemigca emva ? kunye :.

*

I-synonym func yomsebenzi wegama elingundoqo ayibonakali.

*

Abaqhubi ** kunye ** = abanakusetyenziswa endaweni ye ^ kunye ^ = .

*

Umsebenzi wefflush () awufumaneki .

-Iprofayile [ = prof_file ]

--profile [ = prof_file ] Thumela idatha yokwenza ingxelo kwiprof_fayile . Okungagqibekanga kukungqiniswanga . Xa ugijima nge- gawk , iphrofayili nje 'yenguqu eprintiweyo' 'yenkqubo. Xa ugijima nge- pgawk , iphrofayili iqulethe ukubalwa kwamanani kwisitatimende ngasinye kwinkqubo kumgama okhohlo kunye nomsebenzi wee-call counts ngamnye msebenzi ochazwe ngumsebenzisi.

-Ixesha lokuphindaphinda

I-interval-interval Inika amandla ukusetyenziswa kwamazwi aphumayo ngokubonakalisa ukufana okufanayo (Jonga rhoqo iiNgcaciso , ngezantsi). Iintetho zangaphakathi azizange zifumaneke ngokuqhelekileyo ngolwimi lwe-AWK. Umgangatho wePOSIX wongezelele, ukwenza u- awk kunye ne- egrep ehambelana nomnye. Nangona kunjalo, ukusetyenziswa kwabo kunokwenzeka ukuba iphule iinkqubo ze-AWK zangaphambili, ngoko ugalelo lubahlinzekela kuphela xa zicelwa ngolu khetho, okanye xa- iposiposi icacisiwe.

-I-source source -text

Iprogram-yombhalo usebenzisa i - program-text as ikhowudi yomthombo we-AWK. Olu khetho luvumela ukudibanisa okulula kwimisebenzi yamathala eencwadi (esetyenziswe nge-- f kunye neefayile zeefayile ) kunye nekhowudi yomthombo efakwe kumgca womyalelo. Kujoliswe ngokubanzi kwiiprogram eziphakathi kwe-AWK ezisetyenziswe kwiibhalo zeeklobolthi.

-W version

--verver Ukwaziswa kwenguqu yeprinta yecopi ethile ye- gawk kwi-output standard. Oku kuncedo ngokubanzi ukuba ukwazi ukuba ikopi yangoku ye- gawk kwi-system yakho ifikelele ngokumalunga naluphi na i-Free Software Foundation eyabelayo. Oku ku luncedo xa ubika iingxowa. ( NgokweMigangatho yeCoding Coding , ezi zikhetho zidala ukuphuma ngokukhawuleza.)

- Bhalisa ukuphela kwezikhetho. Oku kuncedo ukuvumela iingxoxo ezingaphezulu kwiprogram ye-AWK ngokwayo ukuqala nge `` - ''. Oku kubaluleke kakhulu ukuhambelana neengxabano ezixubushayo ezisetyenziselwa ezinye iinkqubo zePOSIX.

Kwimodi yokuhambelana, nayiphi na enye inketho ikhutshwe njengengavumelekanga, kodwa ingenjalo. Ngokusebenza ngokuqhelekileyo, ngokungapheli kwenkqubo yokunikezelwa kwenkcazo , iinketho ezingaziwa zidluliselwe kwinkqubo ye-AWK kwi- ARGV yokulungiselela. Oku kuncedo kakhulu ekusebenzeni iinkqubo ze-AWK nge `` #! '' Indlela yokuguqulela ephumelelayo.

INKQUBO YENKQUBO

Inkqubo ye-AWK iqulethe ngokulandelelana kwezitatimende-zenzo zepatheni kunye nentsingiselo yomsebenzi wokukhetha.

iphethini { izitatimende zesenzo }

Igama lomsebenzi ( uludwe lweparimeter ) { izitatimende }

I-Gawk ifunda kuqala umthombo weprogram kwiprogram-ifayile (s) xa kuchaziwe, ukusuka kwiingxabano ukuya kwi- insights , okanye kwi-argument yokuqala yokungabikho kwinqanaba lomyalelo. Izinketho ze-- f kunye nezixhobo zingasetyenziswa maxesha amaninzi kumgca womyalelo. I-Gaw ifunda itekisi yenkqubo njengoko ukuba yonke i- program-file kunye nelayini yomthombo wenkcazo yomgca ihlanganiswe ndawonye. Oku kuncedo ekwakheni amathala eencwadi ze-AWK, ngaphandle kokuzibandakanya kwiprogram nganye entsha ye-AWK esebenzisa yona. Kwakhona kunika amandla okuxuba imisebenzi yamathala eencwadi kunye neenkqubo zomgca wolawulo.

Ubume bendawo eguqukileyo AWKPATH icacisa indlela yokucinga xa usebenzisa iifayile ezivela kuyo enegama -f . Ukuba le nguquko ayikho, indlela engagqibekanga ".: / Usr / yendawo / isabelo / awk" . (Inkcazelo yangoku iyakwazi ukuhluka, kuxhomekeke kwindlela eyakhiwe ngayo kwaye ifakwe.) Ukuba igama lefayile elinikezelwe kwi-- f option liqulethe 'uhlamvu' `/ '', akukho mkhangeli wophendlo lwenziwe.

I-Gawk isebenza ngeenkqubo ze-AWK ngolu hlobo lulandelayo. Okokuqala, zonke izabelo ezichaziweyo ezichazwe nge-- v inketho zenziwa. Emva koko, i- gawk iqulunqa inkqubo kwifomu yangaphakathi. Emva koko, ukukhwabanisa kuqhuba ikhowudi kwi- BEGIN ibhloko (ukuba kukho), kwaye uqhubeka ufunda ifayile nganye ebizwa nge- ARGV . Ukuba akukho zifayile ezikhankanyiweyo kumgca womyalelo, i- gawk ifunda ukufaka okuqhelekileyo.

Ukuba igama lomgca kumgca wolawulo lunefom ye var = val ithathwe njengesabelo esitshintshayo. I-variable variable var iya kubelwa i- val value. (Oku kwenzeka emva kokuba yiyiphi i-block ye-block (s) iqhutywe.) Umsebenzi wesigatshana esilawulwayo umyalelo uncedo kakhulu ekunikezeni ixabiso kwiimpawu ezahlukeneyo ze-AWK ukulawula indlela impembelelo ephukile ngayo kwiindawo kunye neirekhodi. Kwakhona kuncedo ekulawuleni urhulumente ukuba ngaba kudlula iipasenti ezifunekayo kwifayili yedatha enye.

Ukuba ixabiso lento ethile ye- ARGV ayinalutho ( "" ), i- gawk isuka phezu kwayo.

Kwirekhodi nganye kwigalelo, uvavanyo lwe- gawk ukujonga ukuba lufana nawuphi na umzekelo kwiprogram ye-AWK. Kwipatheni nganye edibeneyo nerekhodi, isenzo esihambelanayo senziwa. Iipatheni ziyahlolwa kwi-odolo ukuba zenzeke kule nkqubo.

Ekugqibeleni, emva kokuba zonke igalelo liphelile , i- gawk iqhuba ikhowudi kwi-block (s) ye- END (ukuba kukho).

Iintlobo, iiRekhodi, kunye neeNdawo

Izixhobo ze-AWK ziguquguqukayo; ziya kuba zikhona xa zisetyenziswa kuqala. Iimpawu zabo ziba ngamanani ajikelezayo-okanye amanqaku, okanye zombini, kuxhomekeke kwindlela asetyenziswa ngayo. I-AWK inemigca emibini; Iimpawu ezinamanani amaninzi zinokufaniswa. Iimpawu ezininzi ezichazwe ngaphambili zibekwe njengenkqubo yokuqhuba; ezi ziya kuchazwa njengoko zifunwa kwaye zishwankathelwe ngezantsi.

Iirekhodi

Ngokuqhelekileyo, iirekhodi zihlukaniswe ngabalinganiswa abatsha. Ungakwazi ukulawula ukuba iirekhodi zahlula njani ngokunikezela ngexabiso kwi- RS eguqukileyo. Ukuba i- RS ikho nawuphi na umlingisi omnye, lowo mlinganiswa uhlukanisa iirekhodi. Ngaphandle koko, i- RS yinto ebonisa rhoqo. Umbhalo kwimpembelelo efana nale ndlela eqhelekileyo ihlukanisa irekhodi. Nangona kunjalo, kwimodi yokuhambelana, kuphela umlingiswa wokuqala wexabiso lomtya wayo usetyenziselwa ukwahlula iirekhodi. Ukuba i- RS isetyenziswe kwintambo engenanto, iiirekhodi zihlukaniswe ngemigca engagcini. Xa i- RS isetyenziswe kumtya ongenanto, umgca we-lineline uhlala usebenza njengomhluli wensimu, ngaphezu kweyiphi na ixabiso le- FS elinakho .

Fields

Njengoko irekhodi ngalinye lokufakelwa lifundwa, i- gawk iyahlula irekhodi kwiindawo, isebenzisa ukubaluleka kohlobo lwe- FS njengoluhlu lokwintsimi. Ukuba i- FS ingumlingisi omnye, amasimi ayahlukana nalolo mlingiswa. Ukuba i- FS yintambo engananto, umlinganisi ngamnye ngamnye uba yintsimi eyahlukileyo. Ngaphandle koko, i- FS ilindeleke ukuba ibonakalise ngokuqhelekileyo. Kwimeko ekhethekileyo yokuba i- FS yindawo enye, amasimi ahlukaniswe yimigudu yeendawo kunye / okanye iithebhu kunye / okanye iinkcukacha ezintsha. (Kodwa yabona ingxoxo ye- postposi , ngezantsi). QAPHELA: Ixabiso le- IGNORECASE (jonga ngezantsi) lichaphazela nendlela amaqela ahlula ngayo xa i- FS ibonisa njalo, kwaye iirekhodi zihlukana njani xa i- RS ibonisa rhoqo.

Ukuba uguquko lwe - FIELDWIDTHS lubekwe kwiluhlu lwamanani ahlukeneyo, indawo nganye kulindeleke ukuba ibe nobubanzi obude, kwaye i- gawk iyahlula irekhodi ngokusebenzisa ububanzi obucacisiweyo. Ixabiso le- FS linyanzelwanga. Ukunikezela ixabiso elitsha kwi- FS ngaphezu kokusetyenziswa kwe- FIELDWIDTHS , kwaye kubuyiselwa ukuziphatha okungekho phantsi.

Inxalenye nganye kwingxelo yenkcazo ingabhekiswa yindawo yayo, i-$ 1 , i-$ 2 , njalo njalo. I $ 0 yirekhodi yonke. Iimimandla azidingeki zibhekiswe kumanyathelo:

n = 5
shi cilela $ n

iprint inkcazo yesihlanu kwirekhodi yokufaka.

I-variable ye- NF isetyenziswe kwinani elipheleleyo lemihlaba kwiirekhodi zokufakelwa.

Ukubhekiselele kwimimandla engekhoyo (okt amasambu emva kwe-$ NF ) ukuvelisa umtya ongenanto. Nangona kunjalo, ukunikezela kwintsimi engekhoyo (umz., I-$ (NF + 2) = 5 ) ikhulisa inani le- NF , lidala nayiphi na imida yokungenelela kunye nomtya ongenanto njengexabiso layo, kwaye ibangela ukuba ixabiso le $ 0 libuyiselwe, kumasimi ahlukaniswe yixabiso le- OFS . Ukubhekiselele kwiindawo ezingabonakaliyo ezinobangela ukuba iphutha elibulalayo. Ukunciphisa i- NF kubangela ukuba ixabiso lemihlaba edlulileyo ixabiso elitsha lilahleke, kwaye ixabiso le- $ 0 liza kubuyiselwa, kunye nemida eyahlukana nexabiso le- OFS .

Ukunikezela ixabiso kwintsimi ekhoyo kubangela ukuba irekhodi lonke libuye lakhiwe xa i-$ 0 ibhekisiwe. Ngokufanayo, ukunika ixabiso kwi- $ 0 kubangela ukuba irekhodi lihlaziywe, ukudala ixabiso elitsha kwiindawo.

Iintlobo ezakhiweyo

Iinguqu ezakhiweyo zeGawk zi:

ARGC

Inombolo yemigqaliselo yomgca womyalelo (ayifaki ukukhetha ukhetho , okanye umthombo weprogram).

ARGIND

Isalathisi kwi- ARGV yefayili yangoku iqhutyelwa.

ARGV

Umgca womgca womgca womyalelo. Iqela likhokhelwe ukusuka kwi-0 ukuya kwi- ARGC - 1. Ukuguqulwa kwamanzi kwi- ARGV kunokulawula iifayile ezisetyenziselwa idatha.

BINMODE

Kwiinkqubo ezingezizo ze-POSIX, icacisa ukusetyenziswa kwemodi ye `` binary '' kuyo yonke ifayile I / O. Iimpawu zokubala ze-1, 2, okanye i-3, cacisa ukuba iifayile zokufakwayo, iifayile eziphumayo, okanye zonke iifayile, ngokulandelanayo, kufuneka zisebenzise i-I / O yebinary. Imilinganiselo yamanqanaba "r" , okanye "w" ichaza ukuba iifayile zokufakwayo, okanye iifayile eziphumayo, ngokulandelanayo, kufuneka zisebenzise i-I / O yebinary. Iinqununu ze- "rw" okanye "wr" zicacisa ukuba zonke iifayile kufuneka zisebenzise i-I / O yebhanki. Nayiphi na enye intlawulo yeetambo iphathwe njenge "rw" , kodwa yenza umyalezo osilumkiso.

CONVFMT

Ifomathi yokuguqulwa kwamanani, "% .6g" , ngokungagqibekanga.

ENVIRON

Iqela eliqulethe ixabiso lemeko yangoku. Iqela likhokhelwe yiimeko eziguquguqukayo, ixabiso ngalinye lixabiso lezoguquko (umzekelo, INVIRON ["IKHAYA"] ingaba / ikhaya / arnold ). Ukutshintsha olu luhlu aluchaphazeli ukusingqongileyo okubonakalayo kwiinkqubo ezithatha umonakalo nge-redirection okanye inkqubo () yomsebenzi.

ERRNO

Ukuba kukho impazamo yeprogram okanye ukwenza uhlaziyo lwe- lineline , ngexesha lokufunda i- lineline , okanye ngexesha lokuvala () , ngoko- ERRNO izakuquka umtya ochaza impazamo. Ixabiso lixhomekeke ekuguquleleni kwiindawo ezingezizo zesiNgesi.

FIELDWIDTHS

Uluhlu oluhlukileyo lwendawo yeendawo zasendle. Xa isetyenziswe, ukugubungela kuphazamisa igalelo kwimida yobanzi obude, endaweni yokusebenzisa ixabiso lentengo ye- FS njengohluli-ntsimi.

IGAMA LEFAYILE

Igama lefayili yongeniso yangoku. Ukuba akukho fayile echazwe kumgca wolawulo, ixabiso leFILENAME liyi `` - ''. Nangona kunjalo, i- FILENAME ayichazwanga ngaphakathi kwi- BEGIN ibhloko (ngaphandle kokuba kusekwe yi- goline ).

FNR

Inombolo yokurekhoda yefayile kwifayile yangaphakathi yangoku.

FS

Igalelo lenkcazo yenkalo, isikhala ngokungagqibekanga. Jonga amasimu , ngasentla.

IGNORECASE

Ulawula ulwaphulo-mthetho lwamazwi onke kunye nokusebenza kwetambo. Ukuba i- IGNORECASE inexabiso elingenanto, umlinganiselo wechungechunge kunye nokufaniswa kwethempelini kwimithetho, intsimi eyahlukana ne- FS , irekhodi eyahlukana ne- RS , ukubonakalisa ngokuqhelekileyo okufanayo kunye ~ kunye ! ~ , Kunye nabantuub () , gsub () , index () , umdlalo () , ukwahlukana () , kunye nesezantsi () imisebenzi eyakhelwe kuyo yonke into ayigatya imeko xa wenza imisebenzi yokubonakalisa rhoqo. QAPHELA: I- array subscripting ayichaphazelwanga, kwaye akukho msebenzi we- asort () .

Ngaloo ndlela, ukuba i- IGNORECASE ayifani nelingana, i / aB / imida yonke imingcele "ab" , "aB" , "Ab" , kunye ne "AB" . Njengazo zonke iinguqu ze-AWK, ixabiso lokuqala le- IGNORECASE liyi-zero, ngoko yonke imbonakalo yexesha eliqhelekileyo kunye nemisebenzi yeetambo ngokuqhelekileyo i-case-sensitive. Ngaphansi kwe Unix, i- ISO 8859-1 isetyenzisi seLatin-1 esetyenzisiweyo xa sisayinayo imeko.

LINT

Inikeza ukulawula okunamandla kwindlela yokukhetha - ngaphakathi kwenkqubo yo-AWK. Xa kuyinyaniso, ukugubungela kukuprinta izilumkiso. Xa buxoki, ayenjalo. Xa wabelwa ixabiso lomtya wecala "elibulalayo" , izilumkiso zincinci ziba yimpembelelo ebulalayo, ngokufana ncam Naliphi na enye inyaniso yexabiso eliyilungelelaniso.

NF

Inani lamasimi kwirekhodi langoku lokufaka.

NR

Inani elipheleleyo lamarekhodi okufakwayo abonwe kude.

INMT

Ifomathi yefomathi yamanani, "% .6g" , ngokungagqibekanga.

OFS

Isahlulo sensimi yokuvelisa, isikhala ngokusilelayo.

ORS

Umhlalutyi wenkokhelo, ngokusilela i-newline.

PROCINFO

Iimpawu zoluhlu zibonelela ngcaciso malunga nenkqubo ye-AWK. Kwezinye iinkqubo, kunokubakho izinto kwiqela, "iqela1" ngokusebenzisa "iqela n " kwabanye, n inani lamanani ancedisayo enkqubo. Sebenzisa umqhubi ukuvavanya ezi zinto. Ezi zinto zilandelayo ziqinisekisiwe ukuba ziyafumaneka:

I-PROCINFO ["egid"]

ixabiso le- getegid (2) yefowuni yefowuni.

I-PROCINFO ["euid"]

ixabiso le- geteuid (2) yefowuni yefowuni.

I-PROCINFO ["FS"]

"FS" ukuba intsimi ekwahlukana ne- FS isebenza, okanye "FIELDWIDTHS" ukuba insimu eyahlukana ne- FIELDWIDTHS isebenza.

I-PROCINFO ["gid"]

ixabiso le- getgid (2) yefowuni yefowuni.

I-PROCINFO ["pgrpid"]

Inkqubo ye-ID ye-ID yangoku.

I-PROCINFO ["pid"]

Inkqubo yenkqubo yenkqubo yangoku.

I-PROCINFO ["ppid"]

Inkqubo yenkqubo yomzali kwinkqubo yangoku.

I-PROCINFO ["uid"]

ixabiso lefowuni ye- getuid (2).

RS

Umgcahluli wokurekhoda irekhodi, ngokungagqibekanga uluhlu olutsha.

RT

I-terminator irekhodi. I-Gawk isetha i- RT kwisicatshulwa sokubhaliweyo esifana nesalathisi okanye imbonakalo eqhelekileyo echazwe yi- RS .

RSTART

Isalathisi somlingisi wokuqala ohambelana nomdlalo () ; 0 ukuba akukho mdlalo. (Oku kuthetha ukuba izihlomelo zamanqaku ziqala ngenye.)

UHLU

Ubungakanani bomtya ohambelana nomdlalo () ; -1 ukuba akukho mdlalo.

SUBSEP

Isiqhelo esisetyenziselwa ukwahlula amanqaku amaninzi kwizinto ezilandeleleneyo, ngokuzenzekelayo "\ 034" .

TEXTDOMAIN

Isizinda sobhaliweyo kwinkqubo ye-AWK; esetyenziselwa ukufumana iinguqulelo ezikuloo ndawo.

Iimpawu

Iirejista zibhaliswe ngegama phakathi kweebakaki zesikwere ( [ kunye ] ). Ukuba ibinzana lithetha uluhlu lwamagama ( expr , expr ...) ngoko kubhaliswa kwintlobo ngumtya oqulethwe ngumbono we (intambo) yexabiso ngalinye, olwahlukileyo ngexabiso le- SUBSEP . Esi sakhiwo sisetyenziselwa ukufanisa ukuphindaphindwa kwemigca. Umzekelo:

i = "A"; j = "B"; k = "C"
x [i, j, k] = "nceda, ihlabathi \ n"

unikezela umtya othi "ulo, ihlabathi \ n" kwisiqendu se- x ekhokhelwe ngumtya othi "A \ 034B \ 034C" . Zonke iirrays kwi-AWK zinxulumana, oko kukuthi zikhokhelwe ngexabiso lomtya.

Umsebenzisi okhethekileyo angasetyenziselwa ukuba ngaba okanye ngeli xesha ngelixesha ukuba ibone ukuba uluhlu lubonisa ixabiso elithile.

ukuba (i-val in array) phrinta uluhlu [val]

Ukuba uluhlu lunemiqulu eminingi, sebenzisa (i, j) kwinqanaba .

Ukwakhiwa kwakhona kungasetyenziselwa ukulungelelanisa kuzo zonke iinkalo zoluhlu.

Isalathiso singasuswa kwisigaba ngokusebenzisa isitatimende sokususa . Isitatimende sokususa singasetyenziselwa ukususa konke okubhalwe kwinqanaba, ngokucacisa igama legama ngaphandle kokubhalisa.

Uhlobo lokuTshintsha noTshintsho

Imimandla kunye nemigangatho ingaba (amanqaku athambileyo), okanye iintambo, okanye zombini. Indlela ixabiso lokuguquguquka elithethiweyo lixhomekeke kumongo walo. Ukuba isetyenziswe kwintetho yamanani, iya kuthathwa njengenombolo, ukuba isetyenziswe njengomtya, iya kuthathwa njengomtya.

Ukunyanzela ukutshintsha okumele kuthathwe njengenombolo, yongeza 0 kuyo; ukuwuphoqa ukuba uphathwe njengomtya, ucwangcise ngokutya ngentambo engekho.

Xa umtya kufuneka uguqulwe kwinani, ukuguqulwa kufezwa usebenzisa i- strtod (3). Inombolo iya guqulwa kwintambo ngokusebenzisa ixabiso le- CONVFMT njengefomathi yefomathi ye- sprintf (3), kunye nenani lexabiso loguquko njengengxabano. Nangona kunjalo, nangona zonke iinombolo ze-AWK zijikeleza-indawo, ixabiso eliqhelekileyo lihlala liguqulwa njengeenombolo. Ngaloo ndlela, kunikwe

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

i-variable variable ine-string value ye "12" kwaye ayiyi "12.00" .

I-Gawk yenza ukuthelekiswa ngale ndlela ilandelayo: Ukuba izinto eziguquguqukayo zimbalwa, zifaniswa ngokulinganayo. Ukuba inani elithile linenani kwaye enye inomlinganiselo wechungechunge othi `` intambo yeenombolo, '' ngoko ke ukuthelekiswa kwenziwa kwakhona ngenani. Ngaphandle koko, inani leenombolo liguqulwa kwintambo kunye nokuqhathaniswa kwentambo. Imilinganiselo emibini ifaniswa, ewe, njengemida. Qaphela ukuba umgangatho wePOSIX usebenza ngcamango ethi `` intambo yenombolo '' kuyo yonke indawo, kwimiqhumo yeetambo. Nangona kunjalo, oku kucacile, kwaye i- gawk ayenzi oku. (Ngethamsanqa, oku kulungiswe kwinguqu elandelayo yomgangatho.)

Qaphela ukuba imizila yeetambo, efana ne "57" , ayikho imiringo yamanani, iyintambo yeetambo. Ingcamango ethi `` intambo yenombolo '' isebenza kuphela kumasimi, igalelo lombutho , i- FILENAME , i- ARGV , izixhobo ze- ENVIRON kunye neemeko zoluhlu oludalwe ngokuhlukana () ezizixhobo zamanani. Iingcamango ezisisiseko kukuba igalelo lomsebenzisi , kunye negalelo lomsebenzisi kuphela, elijongene nenani, kufuneka liphathwe ngale ndlela.

Imilinganiselo engabonakaliyo inexabiso lenani le-0 kunye nenani lomtya "" (null, okanye engenanto, ngentambo).

IziQiniso ze-Octal kunye neeHexadecimal

Ukuqala ngenguqulo ye-3.1 ye- gawk, ungasebenzisa i-C-style octal kunye ne-hexadecimal constants kwi-code yakho yomthombo we-AWK. Ngokomzekelo, ixabiso le-octal 011 lilingana nesilinganisi- 9 , kwaye ixabiso le-hexadecimal value 0x11 lilingana nobude 17.

Iinqanaba zentsimbi

Imizila engamaqhosha e-AWK ilandelelwano lwabalinganiswa olufakwe phakathi kweengcaphuno ezibini ( " ).

\\

Ukubuyela emva kwangempela.

\ a

Umlingiswa 'Khangela' '; ngokuqhelekileyo i-ASCII UB.

\ b

backspace.

\ f

yokutya ifom.

\ n

entsha.

\ r

ukubuyela kwinqwelo.

\ t

ithebhu eqondekileyo.

\ v

ithebhu ecacileyo.

\ x idijithi yenombolo

Umlingiswa omele umtya wee-hexadecimal tarakimu emva kwe \ x . Njengoko ku-ANSIC, zonke idijadecimal numbers zilandelwa njengenxalenye yokulandelelana kokulandelwa. (Le nto ifanele isitshele into ethile malunga nolwakhiwo lolwimi yikomiti.) Umzekelo, "\ x1B" ngumlingiswa we-ASCIIESC (ukuphepha).

\ ddd

Umlingiswa omele ulandelelwano lwe-1, 2-, okanye udidi lwe-3 lwamanani e-octal. Umzekelo, "\ 033" ngumlingisi we-ASCII ESC (ukuphepha).

\ c

Umntu wangempela c .

Ukulandelelana kokusinda kungasetyenziselwa ngaphakathi kweentshukumo eziqhelekileyo (umz., / [\ T \ f \ n \ r \ v] / ufanelana nabalinganiswa be-whitespace).

Ngendlela yokuhambelana, iibalo ezimelelwe ngokulandelana kwee-octal kunye ne-hexadecimal ukulandelwa ziphathwa ngokubhekiselele xa zisetyenziswe kwixesha eliqhelekileyo lokubonakalisa. Ngaloo ndlela, / \ 52b / lilingana ne / \ b b / .

Iipateni kunye neZenzo

I-AWK ulwimi olujoliswe kumgca. Umzekelo uza kuqala, kwaye emva koko isenzo. Iingxelo zenzo zifakwe kwi { and } . Ngaba umzekelo ungase ulahleke, okanye isenzo singase silahleke, kodwa, ngokuqinisekileyo, asibabini. Ukuba iphethini ayiphumekanga, isenzo senziwa nganye irekhodi enye yefowuni. Isenzo esingekho silingana

{shicilela}

eprinta yonke irekhodi.

Amazwana aqala ngohlobo lwe `` # '', kwaye uqhubeke ude umgca womgca. Imigca engenanto ingasetyenziselwa ukwahlula iingxelo. Ngokuqhelekileyo, isitatimende siphelela ngomxholo omtsha, nangona kunjalo, oku akunjalo kumigca ephela '`,' ', { , ? , : , && , okanye || . Iimilo eziphelile ukwenza okanye ezinye iinkcukacha zabo ziqhubeka ngokuqhubekayo kumgca olandelayo. Kwezinye iimeko, umgca unokuqhubeka ngokuwuphelisa nge ', apho i-newline iya kuhoywa.

Izitatimende ezininzi zingafakwa kumgca omnye ngokuzihlukanisa nge ``; ''. Oku kusebenza kuzo zombini izitatimenti ngaphakathi kwincandelo yesenzo sombini wendlela yokwenza ipatheni (icala eliqhelekileyo), kunye neengxelo zentetho ngokwamaphethini ngokwawo.

Iipatheni

Iipateni ze-AW ingaba enye yezi zinto zilandelayo:

QALELA UKUPHELA / ibonakaliso rhoqo / umzekelo wesondlo kunye & pattern iphethini || iphethini ? umzekelo : iphethini ( iphethini ) ! pattern pattern1 , pattern2

BEGIN kunye ne- END ziintlobo ezimbini ezikhethiweyo zeepatheni ezingahlolwayo malunga negalelo. Amacandelo amanyathelo azo zonke iipateni ze-BEGIN ziyahlanganiswa ngokungathi zonke izitatimenti sele zibhalwa kwi- BEGIN ibhloko. Ziyacelwa ngaphambi kokuba nayiphi na igalelo lifundwa. Ngokufanayo, zonke iibhloko ze- END zidibene, kwaye zenziwa xa zonke igalelo ziphelile (okanye xa isitatimende sokuphuma senziwa). ISEBE kunye nePART iipatheni azikwazi ukudibaniswa namanye amaphetheni kwimiboniso yomzekelo. ISEBE kunye nePEND iipatheni azikwazi ukuba neengxenye zesenzo ezingekhoyo.

Ukuboniswa / ukubonakalisa rhoqo / iipatheni, ingxelo ehambelanayo iqhutyelwa nganye irekhodi yokufakwayo efana nebonisa rhoqo. Amazwi aqhelekileyo afana nalawo ase- egrep (1), kwaye shwa nkathelwe ngezantsi.

Ibinzana elithethayo lingasebenzisa nayiphi na yabasebenzisi abachazwe ngezantsi kwicandelo lezenzo. Ezi ziqhelekileyo zivavanya ukuba ezinye iinkalo zidibanisa amagama athile.

I && , || , kwaye ! Abaqhubi banengqiqo kwaye, banengqiqo OKANYE, kwaye banengqiqo, ngokulandelanayo, njengaku-C. Benza ukuvavanya kwexesha elifutshane, kunye no-C, kwaye basetyenziswa ukudibanisa amagama amaphethini amaninzi. Njengokuba kukho ezininzi iilwimi, abazali babazali bangasetyenziselwa ukutshintsha umyalelo wokuvavanya.

I-?: Umqhubi ufana nomqhubi ofanayo ku-C. Ukuba umzekelo wokuqala uyinyaniso ke umzekelo osetyenziswayo wokuvavanya umzekelo wesibini, ngaphandle koko ngowesithathu. Iprogram enye yesibini neyesithathu ihlolwe.

Umzekelo1 , ifomathi2 ifom yegama libizwa ngokuba ngumzekelo wendlela . Iyafanisa zonke iirekhodi zokufakelwa eziqala ngerekhodi efana nephethini1 , kwaye iqhubeka ide ifikelele irekhodi efana nephethini2 , ebandakanya. Akuhambelani naluphi na uhlobo oluthile lokubonakalisa ipatheni.

Amaxesha onke

Amazwi aqhelekileyo anoluhlobo olongezelelweyo olufumaneka kwi- egrep . Zibhalwe ngabalinganiswa ngolu hlobo lulandelayo:

c

ihambelana ne-non-metacharacter c .

\ c

ufanelana nomfanekiso wangempela c .

.

ufanisana naliphi na umlinganisi kubandakanywa umgca wendlela

^

ufanisa ukuqala komtya.

$

ihambelana nokuphela komtya.

[ abc ... ]

uluhlu lwesimo, ufanisa nayiphi na ibalinganiswa abc ....

[^ abc ... ]

Uluhlu lwemibala engagatshitshiyo, lufanisana naluphi na umlingiswa ngaphandle kwe- abc ...

r1 | r2

Utshintsho: ufana ne- r1 okanye i- r2 .

r1r2

i-concatenation: ulinganiso r1 , kunye ne- r2 .

r +

ufanisa enye okanye ngaphezulu.

r *

ufanelana nantoni okanye ngaphezulu.

r ?

ufana nomdlalo okanye omnye.

( r )

ukuqokelela: ulinganiso r .

r { n }

r { n ,}

r { n , m } Inye enye okanye amabini amaphakathi ngaphakathi kwi-braces ichaza ibinzana lesantya . Ukuba kukho inamba enye kwiibhondi, ibonakaliso eliqhelekileyo eliphindwe rhoqo liphindwaphindwa. Ukuba kukho amanani amabini ahlukaniswe ngumbumba, uphindwaphindwa kathathu. Ukuba kukho inombolo enye elandelwa yi-comma, ngoko-ke iphindwa ngokuphindaphindiweyo amaxesha.

Iintetho zengqamaniso zifumaneka kuphela ukuba i- postposi okanye i -interval-interval isacacisiwe kumgca womyalelo.

\ y

ufana nomtya ongenanto ngaphandle kokuqala okanye ekupheleni kwegama.

\ B

ufanisa intambo engenanto ngaphakathi kwegama.

\ <

ufana nomtya ongenanto ekuqaleni kwegama.

\>

ufana nomtya ongenanto ekupheleni kwegama.

\ w

ufanisana naluphi na uhlobo lomxholo (iileta, idijithi, okanye i-underscore).

\ W

ufanisana naluphi na umgca ongeyena igama.

\ "

ufanisa intambo engenanto ekuqaleni kweetampu (umtya).

\ '

ufanisa intambo engenanto ekupheleni kweetampu.

Ukulandelwa kokuphepha okusebenzayo kwimigqomo yechungechunge (jonga ngezantsi) nayo isebenzayo ngamazwi avamile.

Iiklasi zemiba yinkalo entsha esetyenziswe kumgangatho wePOSIX. Iklasi lomlingani luphawu oluthile lokuchaza uluhlu lwabalinganiswa abanomxholo othize, kodwa apho abalinganiswa boqobo bahluka ukusuka kwilizwe ukuya kwilizwe kunye / okanye ukusuka kwisetyenziswe kwisetyenzisi. Ngokomzekelo, umbono wento oyimpawu ye-alphabetic ihluke e-USA naseFransi.

Iklasi lomlingani livumelekile kuphela kwisibonakaliso esiqhelekileyo ngaphakathi kweebakaki zoluhlu lomgca. Iiklasi zemiba ziquka [: , igama elingundoqo elisichazela iklasi, kunye :] . Iiklasi zezimpawu ezichazwe ngumgangatho wePOSIX zi:

[: alnum:]

Iimpawu zeAlphanumeric.

[: alpha:]

Abalinganiswa beAlfabhethi.

[: akukho nto:]

Isikhundla okanye abasebenzisi beetekisi.

[: cntrl:]

Abalinganiswa bokulawula.

[: idijithi:]

Abalinganiswa beNombolo.

[: grafu:]

Iimpawu ezizoprinta kwaye zibonakala. (I-space is printable, kodwa ayibonakali, ngelixa kubini.)

[: ezantsi:]

Unobumba obuncinane beelfabhethi.

[: shicilela:]

Abalingiswa abaphrintiweyo (abalinganiswa abangabonakali abalinganiswa.)

[: i-punct:]

Abalinganiswa beePhuctuation (abalinganiswa abangekho ileta, amadijithi, abalinganiswa bokulawula, okanye abalinganiswa bendawo).

[: indawo:]

Abalinganiswa bendawo (njengendawo, ithebhu, kunye nefomathi, ukubiza ngambalwa).

[: phezulu:]

Abalinganiswa beelfabhethi.

[: xdigit:]

Iimpawu eziyinombolo ye hexadecimal.

Ngokomzekelo, ngaphambi komgangatho wePOSIX, ukufanisa iimpawu zeelphanumeric, bekufuneka ubhale / [A-Za-z0-9] / . Ukuba uhlamvu lwakho lube nolunye uhlobo lwabalandelayo abalinganiswa kuzo, oku kungayi kubafanekisi, kwaye ukuba udidi lwakho lubekwe ngokuhlukileyo ukusuka kwi-ASCII, oku kungenako ukufanisa iimpawu ze-ASCII ze-alphanumeric. Ngeklasi ze-POSIX, ungabhala / [[: alnum:]] / , kwaye oku kufana neempawu ze-alfabhethi kunye neenombolo kumatshini wakho.

Iziganeko ezibini ezongezelelweyo ezizodwa zingabonakala kwizintlu zezintlu. Oku kusebenza kwiisethi zobunqunu ezingezo-ASCII, ezinokuthi zibe neempawu ezifanayo (ezibizwa ngokuba yizinto ezidibeneyo ) ezimelelwe ngesigqibo esisodwa, kunye namanqaku athile afana nokulingana, okanye ukukhetha, iinjongo. (Umzekelo, ngesiFrentshi, i-plain `` e '' kunye ne-e-accented e` ilingana.)

Iimpawu zokuqoqa

Isimboli esithintekayo siyinxalenye edibeneyo yokudibanisa ehlanganiswe [. kunye .] . Ngokomzekelo, ukuba i- ch iyinto edibeneyo, ngoko [[.ch.]] Ibonakalisa ngokuqhelekileyo into ehambelana nento edibeneyo, ngelixa [ch] ibinzana eliqhelekileyo elifana ne c okanye h .

Iiklasi zokulingana

Iklasi elinganayo ligama elikhethekileyo lendawo uluhlu lwabalinganiswa olulinganayo. Igama lifakwe kwi- [= and =] . Umzekelo, igama e lingasetyenziselwa ukumela yonke into ethi ``, '' `` e ',' 'ne `` e`.' 'Kule meko, [= = e =]] ibonisa rhoqo ufanisana nayiphi na e , e ' , okanye e` .

Ezi zixhobo zixabiseke kakhulu kwiindawo ezingekho phantsi kweNgesi. Imisebenzi yamathala eencwadi eyenziwa ngeteknoloji ebonisa ukulinganisa ngokuqhelekileyo ngoku iyakwazi kuphela iiklasi ze-POSIX; abaqapheli izibonakaliso zokudibanisa okanye iiklasi ezifanayo.

I \ \ , \ B , \ < , \\ , \ w , \ W , \ ` , kunye \ ' nabasebenzisi bachanekile ukukhangela ; Ziyongezwa ngokusekelwe kwizibonelelo kwiilayibrari zamagama eziqhelekileyo eziqhelekileyo.

Iindlela ezahlukeneyo zokukhetha umgca wokulawula indlela i- gawk eguqulela ngayo abalinganiswa ngamazwi aqhelekileyo.

Akukho zikhetho

Kwimeko engafanelekiyo, i- gawk inikezela zonke izibonelelo ze-POSIX ngamazwi aqhelekileyo kunye nabasebenzisi be-GNU abaqhelekileyo bachazwa ngasentla. Nangona kunjalo, amazwi angeneli axhaswanga.

- postposi

Amazwi aqhelekileyo e-POSIX kuphela axhaswa, abaqhubi be-GNU abazikhethekanga. (Umzekelo, \ w ufana w ). Amagama avaliweyo avunyelwe.

kwixesha

Iimpawu eziqhelekileyo zeNyunx eziqhelekileyo zihambelana. Abaqhubi be-GNU ayilona ekhethekileyo, izibonakalisi zentsuku azifumaneki, kwaye akukho nakwiiklasi ze-POSIX ( [:: alnum:]] njalo njalo). Iimpawu ezichazwe ngokulandelelana kwe-octal kunye ne-hexadecimal yokulandelwa kwezinto eziphathekayo ziphathwe ngokuchanekileyo, nangona zimele ziboniswe rhoqo ngama-metacharacters.

ngexesha

Vumela amagama angamaxesha aqhelekileyo kwiimbonakalo eziqhelekileyo, nangona -kubonelelwe ngexesha .

Izenzo

Iingxelo zenzo zifakwe kwiibhondi, { and } . Iingxelo zesenzo ziquka isabelo esivamile, esinemibandela, kunye nesingqinisiso seenkcukacha ezifumaneka kwiilwimi ezininzi. Abaqhubi, izitatimende zokulawula, kunye neengxelo zengeniso / iziphumo ezikhoyo zilandelwa emva kweeC.

Ba sebenzi

Abaqhubi kwi-AWK, ngokulandelelana kokuqala kwehla, ba

( ... )

Ukuqoqa

$

Nkcazo yoMmandla.

++ -

Ukongezwa kunye nokunciphisa, isiqalo sesibini kunye neposi.

^

Exponentiation ( ** ingasetyenziswa kwakhona, kunye ** = kumsebenzi wesabelo).

+ -!

Unary plus, unary minus, kunye nokunyaniseka.

* /%

Ukuphindaphinda, ukwahlula kunye neendlela.

+ -

Ukongeza kunye nokususa.

indawo

Ikhonti

<>

<=> =

! = == Abaqhubi abahlala rhoqo.

~! ~

Umdlalo osetyenziswayo rhoqo, umdlalo ongekho. QAPHELA: Musa ukusebenzisa ukubonakalisa rhoqo ( / foo / ) kwicala lasekhohlo le ~ ~ okanye ! ~ . Sebenzisa kuphela kwicala lasekunene. Ibinzana / foo / ~ exp linentsingiselo efanayo (($ 0 ~ / foo /) ~ exp ) . Ngokuqhelekileyo akukho into ejoliswe kuyo.

ngaphakathi

Ubulungu obumalunga.

&&

IQHUBA NO.

||

Uluvo OKANYE.

?:

Inkcazo enomxholo weC. Ingaba ifom expr1 ? expr2 : expr3 . Ukuba i- expr1 iyinyaniso, ixabiso lentetho liyi- expr2 , ngaphandle koko iyakubhala . Kuphela kwe- expr2 kwaye i- expr3 ihlolwa.

= + = - =

* = / =% = ^ = Isabelo. Ubini isabelo esipheleleyo ( var = value ) kunye nesabelo-somsebenzi (ezinye iifom) ziyaxhaswa.

Iinkcazo zoLawulo

Iingxelo zolawulo zilandelayo:

isitatimende sithetha ntoni ngelixa ( imimiselo ) ye-( expr1 ; expr2 ; expr3 ) isitatimende sokuthi ( var in array ) isitatimende sophula uqhubeke ususa uluhlu [ isalathisi ] susa i- array exit [ intetho ] { izitatimende }

I / O Iingxelo

Iingxelo zengeniso / iziphumo zilandelayo:

vala ( ifayile [ , njani ] )

Vala ifayile, umbhobho okanye inkqubo yokwenza. Ukukhethwa kwendlela ekufuneka isetyenziswe ngayo kuphela xa uvala umgca omnye kombhobho weendlela ezimbini kwintsebenziswano. Kumele kube yintengo yeetambo, nokuba "ukuya" okanye "ukusuka" .

beline

Beka i-$ 0 ukusuka kwirekhodi elandelayo yenkxaso; usethe iNF , NR , FNR .

< fayile

Beka i $ 0 ukusuka kwirekhodi elandelayo yefayili ; setha iNF .

getline var

Misela var ukusuka kwiirekhodi zangenayo ezilandelayo; usethe iNR , FNR .

fayili var < ifayile

Misela var ukusuka kwingxelo elandelayo yefayili .

myalelo | beline [ var ]

Ukuqalisa umyalelo ukupakisha imveliso kwi $ 0 okanye var , njengasentla.

umyalelo | & getline [ var ]

Ukulawula umyalelo njengendlela yokubambisana ngokupakisha imveliso ibe ngu- $ 0 okanye i- var , njengokuba ngasentla. Iinkqubo ze-Co- co zikwandiswa .

Okulandelayo

Yeka ukucwangcisa irekhodi langoku lokufaka. Ingxelo elandelayo yegalelo ifundwa kwaye ukuqaliswa kokuqala kuhamba neprojekthi yokuqala kwinkqubo ye-AWK. Ukuba ukuphela kwedatha yenkalo kufinyelelwe, i-block (s), okanye i- END , xa ikhona, iyenziwa.

elilandelayo

Yeka ukucwangcisa ifayile yefayile yangoku. Ingxelo elandelayo yokufundwa kwirekhodi ivela kwifayili yenkcazo elandelayo. I-FILENAME ne- ARGIND zihlaziywa, i- FNR isetyenziselwa kwi-1, kwaye ukuqaliswa kuqalisa ngeprojekthi yokuqala kwinkqubo ye-AWK. Ukuba ukuphela kwedatha yenkalo kufinyelelwe, i-block (s), okanye i- END , xa ikhona, iyenziwa.

ukuprinta

Iprinta i rekhodi ekhoyo. Iirekhodi zepropati zipheliswa kunye nexabiso le- ORS .

shicilela uludwe lwe-expr

Ukuprinta amagama. Inqaku ngalinye lihlukaniswe lixabiso le- OFS . Iirekhodi zepropati zipheliswa kunye nexabiso le- ORS .

shicilela uluhlu lwe-expr > ifayile

Ukuprinta amagama kwifayili . Inqaku ngalinye lihlukaniswe lixabiso le- OFS . Iirekhodi zepropati zipheliswa kunye nexabiso le- ORS .

printf fmt, uluhlu lwe-expr

Fomata uze uprinte.

printf fmt, uluhlu lwe-expr > ifayile

Fomata uze uprinte kwifayile .

inkqubo ( cmd-line )

Yenza umyalelo we- cmd-line , kwaye ubuyisele isimo sokuphuma. (Oku kungenakufumaneka kwiinkqubo ezingezizo ze-POSIX.)

fflush ( [ ifayile ] )

Ukucoca naluphi na umgca ochaphazelekayo ohambelana nefayili yokuphuma okanye ifayile yepayipi. Ukuba ifayile ayikhoyo, umrhumo osemgangathweni uphuphuma. Ukuba ifayile yintambo engekho phantsi, zonke iifayile ezivelisiweyo ezivulekileyo kunye nemibhobho zinezitshizi zazo.

Izilungiso ezongezelelweyo zomveliso zivunyelwe ukuphrinta nokuprinta .

shicilela ... >> ifayili

usebenzise isiphumo kwifayile .

uprinta ... | myalelo

ubhala ngombhobho.

shicilela ... | & umyalelo

ithumela idatha kwinkqubo yoququzelelo.

Umyalelo we- gotline ubuyisela 0 ekupheleni kwefayile kunye -1 ngeposiso. Ngephutha , i- ERRNO iqulethe umtya ochaza ingxaki.

QAPHELA: Ukuba usebenzisa ibhobho okanye inkqubo yokwenza umgca , okanye ukushicilela okanye ukuprinta ngaphakathi kwelophu, kufuneka usebenzise elisondeleyo () ukudala iziganeko ezintsha zomyalelo. I-AW ayigcini ngokuzenzekelayo iipayipi okanye iinkqubo-co-xa zibuyela e-EOF.

Ingxelo yeprintf

Iinguqu ze-AWK zesitatimende se- printf kunye nomsebenzi we-sprintf () (jonga ngezantsi) zamkela iifom zecatshulwa ezilandelayo:

% c

Uhlobo lwe-ASCII. Ukuba imbambano esetyenziselwa i- % c iyinombolo, iphathwa njengomlingisi kwaye iphrintiwe. Ngaphandle koko, ingxabano kuthathwa njengomtya, kwaye umgca wokuqala wololuhlu uprintwe.

% d , % i

Inombolo yokugqibela (inxalenye epheleleyo).

% e,% E

Inombolo yendawo ejikelezayo yefomu [-] d.dddddde [+ -] dd . Ifomati ye- % E isebenzisa i- E esikhundleni se- e .

% f

Inombolo yecala ejikelezayo yefomu [-] ddd.dddddd .

% g,% G

Sebenzisa i- % e okanye i- % f yokuguqulwa, nayiphi na emfutshane, kunye neeferethi ezingabalulekanga. Ifom yeG% isebenzisa i- % E esikhundleni se- % e .

% o

Inombolo ye-octal engabhalwanga (kunye nenani elipheleleyo).

% u Inombolo yokugqibela engabhalwanga (kwakhona, inombolo).

% s

Umtya womtya.

% x,% X

Inombolo ye-hexadecimal engabhalwanga (ininzi). I- % X ifomati isebenzisa i- ABCDEF endaweni ye- abcdef .

%%

Uhlobo olulodwa % ; akukho mpikiswano eguqulwayo.

Okukhethiweyo, iiparitha ezongezelelweyo zingaba phakathi kwe % kunye nolawulo lokubhala:

balala i $

Sebenzisa isibalo 'sempikiswano kule nqanaba kwifomati. Oku kubizwa ngokuba yinkcazo yendawo kwaye ijoliswe ngokuyinhloko ekusetshenzisweni kweenguqulelo eziguqulelwe zezifomathi, kungekhona kwimixholo yokuqala yeprogram ye-AWK. Kuyandiswa kwendwangu .

-

Ibinzana kufuneka lishiye-lichanekileyo ngaphakathi kwintsimi yalo.

indawo

Ukuguqulwa kwamanani, iziqulatho ezinokubaluleka kunye nendawo, kunye neempawu ezingalunganga kunye nomqondiso osisigxina.

+

Isibonakaliso sokudibanisa, esetyenziswe ngaphambi kokuba uguqule ububanzi (jonga ngezantsi), uthi uhlale unikezela uphawu lokuguqulwa kwamanani, nangona ukuba idatha ifomathiwe ifanelekile. I- + iphakamisa umguquleli wendawo.

#

Sebenzisa 'uhlobo oluthile' 'lweencwadi ezithile zokulawula. I- % o , unikezele i-zero ehamba phambili. I- % x , kunye ne- % X , unikezela i- 0x okanye i- 0X ekhokelayo kwisiphumo se-nonzero. I- % e , % E , kunye ne- % f , isiphumo sinexesha eligqibeleleyo. I- % g , kunye ne- % G , ii-zeros ezilandelwayo azikhangeli kwisiphumo.

0

Inkokheli eyi- 0 (zero) yenza njengeflegi, ebonisa ukuba imveliso kufuneka ifakwe i-zeroes esikhundleni seendawo. Oku kusebenza nakwiifomati zokuvelisa ezingezizo. Le flegi inefuthe xa ububanzi bentsimi bubanzi ngaphezu kwexabiso lokunyatheliswa.

ububanzi

Intsimi kufuneka ifakwe kwi-width kulobu bubanzi. Intsi ngokuqhelekileyo igcwele izikhala. Ukuba ifulegi ye- 0 isetyenzisiwe, ifakwe i-zeroes.

. phambili

Inombolo ecacisa ukuchaneka ukusebenzisa xa ushicilela. I- % e , i- % E , kunye ne- % f ifom, oku kuchaza inani leedijithi ofuna ukuprintwa ngakwesokudla kwinqanaba lokugqibela. Kwi- % g , kunye ne- % G ifom, icacisa inani eliphezulu lamanani amaninzi. Kwi % d , % o , % i , % u , % x , kunye ne- % X ifom, icacisa inani elincinci lamadijithi ukuprinta. I- % s , icacisa inani elona liphezulu labalinganiswa ukusuka kwintambo emele ifakwe.

Ububanzi obunamandla kunye nobuchule bokuqala be-ANSI C printf () . A endaweni * yobubanzi okanye inkcazo ecacileyo yenza ukuba ixabiso labo lithathwe kwiluhlu lweengxabano ukuya kwi- printf okanye kwi- sprintf () . Ukusebenzisa i-specifier ngokwenza ububanzi obunamandla okanye ukuchaneka, unikezele i-$ count emva * kwifomathi yefomathi. Umzekelo, "% 3 $ * 2 $. * 1 $ s" .

Amagama Eefayile Ekhethekileyo

Xa senza i-I / O ukujika kwi- print or printf ibe kwifayile, okanye nge- goline esuka kwifayili, i- gawk iyaqaphela ezinye iifayile ezizodwa ngaphakathi. Ezi fayile zivumela ufikelelo lokuvula ii-descriptors zefayile ezizuzwe kwiprogram yomzali womnxeba (ngokuqhelekileyo igobolondo). La magama wefayile anokusetyenziswa kwakhona kumgca wolawulo ukubiza iifayile zedatha. Iifayile zilandelayo:

/ dev / stdin

Igalelo eliqhelekileyo.

/ dev / stdout

Umgangatho osemgangathweni.

/ dev / stderr

Impembelelo yomgangatho osemgangathweni.

/ dev / fd / n

Ifayile ehambelana nefayile yefayile evuliwe n .

Ezi zincedo ngokukodwa kwimilayezo yeemposiso. Umzekelo:

shi cilelwa "Ulibethe!" > "/ dev / stderr"

ngelixa ufanele usebenzise

shi cilelwa "Ulibethe!" | "ikati 1> no-2"

Ezi zixhobo zeefayile ezizodwa zingasetyenziswa kunye ne- & co-process operator ngokudala uxhulumaniso lweeTCP / IP.

/ inet / tcp / lport / rhost / rport

Ifayile yoxhumano lwe- TCP / IP kwi-port yolwazi lwengingqi ukuya kummandla ohlala kude kwihostel kwi-port export . Sebenzisa i-port ye- 0 ukuba inkqubo ikhethe ichweba.

/ inet / udp / lport / rhost / rport

Kuyafana, kodwa sebenzisa iDP / IP esikhundleni seTCP / IP.

/ inet / eluhlaza / lport / rhost / rport

Kugcinwe ukusetyenziswa kwangomso.

Ezinye iifayile ezikhethekileyo zinika ukufikelela kwiinkcukacha malunga nokusebenza kwegrawk . La mafayili sele aphelile. Sebenzisa i- PROCINFO uluhlu ukuze ufumane ulwazi olunikezayo. Iifayile zilandelayo:

/ dev / pid

Ukufunda le fayili ubuyisela i-ID yenkqubo yenkqubo yangoku, kwi-decimal, ipheliswe ngomnxeba omtsha.

/ dev / iphedi

Ukufunda le fayili ubuyisela i-ID yenkqubo yomzali kwinkqubo yangoku, kwi-decimal, ipheliswe ngomnxeba omtsha.

/ dev / pgrpid

Ukufunda le fayile kubuyisela i-ID yeqela yeprogram yenkqubo yangoku, kwisigxina, ipheliswe ngomnxeba omtsha.

/ dev / umsebenzisi

Ukufunda le fayile ubuyisela irekhodi elilodwa elipheliswe ngoluhlu olutsha. Amasimu ayahlukana neendawo. I-$ 1 yixabiso lefowuni ye- getuid (2), i-$ 2 yinani le- call ye- geteuid (2) yefowuni, i-$ 3 yixabiso le- getgid (2) yefowuni yenkqubo, kwaye i-$ 4 yixabiso le- getegid (2) ifowuni. Ukuba kukho nayiphi na imimandla eyongezelelweyo, ii-ID zeqela ezibuyiselwe ngamagqabini (2). Amaqela amaninzi asinakuxhaswa kuzo zonke iinkqubo.

Imisebenzi yeMbali

I-AWK inezinto ezilandelayo ezikwakhelwe kwi-arithmetic:

i-atan2 ( y , x )

Ibuyisela i-arctangent y / x kuma-radians.

cos (i- expr )

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

exp exp )

Umsebenzi ocacileyo.

int ( expr )

Iinqununu ukuya kuphelele.

log ( expr )

Umsebenzi welogarithm wendalo.

randi ()

Ibuyisela inombolo ehleliweyo phakathi kwe-0 no-1.

isono ( expr )

Ibuyisela i-sine ye- expr , e-radians.

sqrt ( expr )

Umsebenzi wengcambu yesikwere.

( [ expr ] )

Usebenzisa i- expr njengembewu entsha ye-generator yenombolo. Ukuba akukho xwebhu lunikezelwa, ixesha lentsuku lisetyenzisiweyo. Ixabiso lokubuyisela liyimbewu yangaphambili ye-generator number random.

ImiSebenzi yoMgca

I-Gawk inezicwangciso ezilandelayo ezenziwe ngaphakathi:

i-asort ( s [ , d ] )

Ibuyisela inani lezinto kwi-array s source. Iziqulatho zoluhlu zilandelwa ngokusebenzisa imigaqo eqhelekileyo yomlinganiselo wokuqhathanisa ixabiso, kwaye iindleko zexabiso elihlelwe zichithwa ngokulandelelana ngokulandelelana ngokuqala 1. Ukuba i-optional destination array d ichaziwe, ngoko iqala ngokuphindaphindiweyo , kwaye ke d ihlelwe, ilahle iindatshana ze-source array s ingatshintshi.

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

Khangela umgca ojoliswe kuyo ngokubhekiselele kumdlalo oqhelekileyo r . Ukuba u ngumtya oqala ngo- g okanye u- G , uze utshintshe yonke imifuno ye- r . Ngaphandle koko, h inombonakalo ebonisa ukuba imatshini ye- r ithatha indawo. Ukuba ayinakunikwa, i-$ 0 isetyenziswe endaweni yoko. Kwimiyalezo yokutshintshwa, ukulandelelana \ n , apho n idijithi ukusuka ku-1 ukuya ku-9, isenokusetyenziswa ukubonisa nje umbhalo ohambelana nokuxhaswa kobuhlanga. Ulandelelwano \ 0 lubonisa umbhalo ohambelana nonke, njengokuba umlinganisi & . Ngokungafani ne- sub () kunye ne- gsub () , umtya oguqulwayo ubuyiswa njengesiphumo somsebenzi, kwaye umgca wecala loqobo uguqulwa .

gsub ( r , s [ , t ] )

Ngomnye umgca ohambelana nomfanekiso oqhelekileyo r kumtya, thatha indawo yomtya, kwaye ubuyisele inani lezithuba. Ukuba awufumanekanga , sebenzisa i $ 0 . I & & nbsp Sebenzisa \ & ukufumana i- & literal. (Oku kufuneka ukuba ifakwe njenge "\\ &" ; funda i- GAWK: Inkqubo ephumelelayo ye-AWK yokufumana ingxoxo epheleleyo yemigaqo ye & & backslashes kwisicatshulwa sokubhaliweyo senkqutyana () , gsub () , kunye nabantuub () .)

isalathisi ( s , t )

Ibuyisela inkcazo yocingo t kumtya, okanye 0 ukuba ingekho. (Oku kuthetha ukuba izihlomelo zamanqaku ziqala ngenye.)

ubude ( [ s ]

Ibuyisa ubude bomtya , okanye ubude be- $ 0 ukuba ngaba abukho.

umdlalo ( s , r [ , a ]

Ibuyisela isikhundla s lapho apho kubonakala khona ukubonakaliswa rhoqo, okanye 0 ukuba ingekho, kwaye ibeka ixabiso le- RSTART ne- RLENGTH . Qaphela ukuba umyalelo wempikiswano ufana no-opharetha: umgca . Ukuba ulungelelaniso lunikezelwa, ichanekile kwaye i-elements 1 ukuya kwi- n zizaliswe neengxenye ze- s ezifanisa ukunyanzeliswa kobuzali obuhambelanayo. Isalathisi se-0 senu siqulethe isahlulo esifana nesiganeko esiqhelekileyo r .

ukwahlukana ( s , a [ , r ] )

Ukwahlula umtya kwi-array kwi-expression yangaphambili , kwaye ubuyisela inani lemihlaba. Ukuba ishiyiwe, iFS isetyenziswe endaweni yoko. Uluhlu lukhishiwe kuqala. Ukuqhaqhazela kuziphatha ngokufanayo kwintsimi eyahlula, ichazwe ngasentla.

sprintf ( fmt , uluhlu lwe-expr )

Ukuprint -uluhlu ngokuhambelana ne- fmt , kwaye ubuyisela umtya owenzayo.

strtonum ( str )

Uhlola i- str , kwaye ubuyisela ixabiso layo. Ukuba intambo iqala ngo- 0 , i- strtonum () ithatha ukuba i- str iyinombolo ye-octal. Ukuba intambo iqala nge- 0x okanye 0X ekhokelayo , i- strtonum () ithatha ukuba i- str iyinombolo ye-hexadecimal.

ngaphantsi ( r , s [ , t ] )

Nje nge gsub () , kodwa kuphela i-substring ehamba phambili ifakwe endaweni.

substr ( s , i [ , n ] )

Ibuyisela i-nchachater substring of s starting at i . Ukuba n ayishiyi, yonke into iyasetyenziswa.

engaphezulu ( str )

Ibuyisela ikopi yomtya weqhosha , kunye nabo bonke abalinganiswa beentlobo eziphezulu eziguqulelwe kumalungu abo aphantsi. Izinhlamvu ezingezantsi ze-alfabhethi zishiywe zingatshintshi.

i-toupper ( str )

Ibuyisela ikopi yomtya weqhosha , kunye nabo bonke abalinganiswa beefayile ezingezantsi eguqulelwe kumalungu abo aphezulu. Izinhlamvu ezingezantsi ze-alfabhethi zishiywe zingatshintshi.

Imisebenzi yexesha

Ekubeni enye yezinto eziphambili zeenkqubo ze-AWK iqhube iifayile ze-log eziqulethe ulwazi lweetampu zesikhathi , i- gawk inikeza imisebenzi elandelayo ukufumana ixesha lokubethelela nokuyifometha .

i-mktime ( datespec )

Ukutshintsha i- datespec ngexesha lesitampu yesimo esifanayo njengoko kubuyiselwa yi- systime () . I- datepec ngumtya wefom YYYY MM DD HH MM SS [DST] . Okubhalwe komtya kunamanani amathandathu okanye anesixhenxe abamele ngokulandelanayo kunyaka opheleleyo kuquka ikhulu, inyanga ukusuka ku-1 kuya ku-12, umhla weenyanga ukususela ngo-1 kuya ku-31, ihora lemihla ukusuka ku-0 ukuya ku-23, umzuzu ukusuka ku-0 ukuya kwi- 59, neyesibini ukusuka ku-0 ukuya ku-60, kunye nokukhetha ukukhanya kwelanga. Imilinganiselo yale manani ayifanele ibe phakathi kweendawo ezichaziweyo; Ngokomzekelo, iyure ye--1 ithetha ihora eli-1 phambi kobusuku. Ikhalenda ye-Gregorian-originally, i-0 yonyaka owedlule 1 kunye nonyaka -1 kunyaka owedlule 0. Ixesha licingelwa ukuba lixesha lendawo. Ukuba ukukhanya kwelanga kwintlambo kulungile, ixesha licingwa ukuba lixesha lokugcina imini; ukuba i-zero, ixesha licingelwa ukuba lixesha eliqhelekileyo; kwaye ukuba ingalunganga (i-default), i- mktime () izama ukujonga ukuba ixesha lokugcina ilanga lisebenza ngexesha elichaziweyo. Ukuba i- datespec ayinayo izixhobo ezaneleyo okanye ukuba ixesha eliphumayo lingekho , i- mktime () ibuyisela -1.

strftime ( [ ifomati [ , itampampu ]] )

Iimatampamp zohlobo lweefomati ngokwemiqathango kwifomathi. I- timestamp kufuneka ibe yifomu efanayo njengoko ibuyiselwa yi- systime () . Ukuba i- timestamp ishiywe , ixesha langoku lomhla lisetyenzisiweyo. Ukuba ifomathi ayikho, ifomathi engapheliyo efana neyokuphuma komhla (1) isetyenziswa. Bona inkcazo ye- strftime () yomsebenzi kwi-ANSI C yokuguqulwa kwefomathi eqinisekisiwe ukuba iyafumaneka. Uhlobo lwe-domain-domain ye- strftime (3) kunye nephepha lomntu ngokuba liza ne- gawk ; ukuba loo nguqulo yayisetyenziselwa ukwakha i- gawk , ke zonke iinguqulelo ezichazwe kwiphepha leendoda ziyafumaneka ukuze zenzeke.

systime ()

Ibuyisela ixesha langoku lomhla njengenani lemitha ukusuka kwi-Epoch (1970-01-01 00:00:00 UTC nge-POSIX iinkqubo).

ImiSebenzi yeeNgcaciso zeMisebenzi

Ukuqala ngenguqulo ye-3.1 ye- gawk , imisebenzi elandelayo yokunyanzelisa i-bit ekhoyo. Basebenza ngokuguqula ixabiso lenkcazo elincinci elincinci kumanani amaninzi angabhalwanga, ukwenza umsebenzi, kwaye emva koko uguqula umphumo kwiindawo ezijikelezayo. Imisebenzi yile:

kunye ( v1 , v2 )

Buyisela i-bitwise kunye nexabiso elibonelelwe yi- v1 ne- v2 .

compl ( val )

Buyisela i-valent.

i-lshift (i- val , ibala )

Buyisa ixabiso le- val , ishintshiweyo ngakwesobunxele ngamanani ebalo.

okanye ( v1 , v2 )

Buyisela i-OK okanye i-values ​​ezibonelelwe yi- v1 ne- v2 .

i-rhift (i- val , isibalo )

Buyisela ixabiso le- val , ishintshwe ngokufanelekileyo ngokubala kwamanani .

xor ( v1 , v2 )

Buyisela i-XOR yexabiso elinikezelwa yi- v1 ne- v2 .

Ukusebenza kwangaphakathi

Ukuqala ngohlobo lwe-3.1 lwe- gawk , le mi sebenzi ingasetyenziselwa ngaphakathi kwiprogram yakho ye-AWK yokuguqulela imisipha ngexesha lokuhamba. Ukufumana iinkcukacha ezipheleleyo, khangela i- GAWK: Inkqubo yokuSebenza eyi-AWK .

i-bindtextdomain ( ulawulo [ , domain ] )

Icacisa i-directory apho i- gawk ibheka iifayile ze .mo , xa zingenakwenzeka okanye zingenakufakwa kwindawo 'ejwayelekile' (umzekelo, ngexesha lokuvavanya). Ibuyisela isiqulatho apho idilesi 'eboshwe.'

I- domain engagqibekanga yixabiso le- TEXTDOMAIN . Ukuba ulawulo luyikhomputha engekho ( "" ), ke i- bindtextdomain () ibuyisela ukubophezela kwangoku kwi- domain enikeziwe.

dcgettext ( umtya [ , idibansi [ , isigaba ]] )

Ibuyisela ukuguqulwa kwetambo kwi-domain domain text for the category category . Ixabiso elingagqibekanga kwi- domain yixabiso langoku le- TEXTDOMAIN . Ixabiso elingagqibekanga kwinqanaba "LC_MESSAGES" .

Ukuba unikezela ixabiso kwinqanaba , kufuneka libe ngumtya olingana nelinye leendidi ezikhoyo ezaziwa kwi- GAWK: Inkqubo yokuSebenza eyi-AWK . Kumele unikeze kwakhona i-domain domain. Sebenzisa i- TEXTDOMAIN ukuba ufuna ukusebenzisa i-domain yangoku.

dcngettext ( umtya1 , umtya2 , inombolo [ , idibansi [ , isigaba ]] )

Ibuyisela ifom yobuninzi esetyenzisiweyo kwinombolo yokuguqulelwa kwetambo1 kunye nomtya2 kwisizinda sesigcawu sesicatshulwa kwisigaba sendawo yesigaba . Ixabiso elingagqibekanga kwi- domain yixabiso langoku le- TEXTDOMAIN . Ixabiso elingagqibekanga kwinqanaba "LC_MESSAGES" .

Ukuba unikezela ixabiso kwinqanaba , kufuneka libe ngumtya olingana nelinye leendidi ezikhoyo ezaziwa kwi- GAWK: Inkqubo yokuSebenza eyi-AWK . Kumele unikeze kwakhona i-domain domain. Sebenzisa i- TEXTDOMAIN ukuba ufuna ukusebenzisa i-domain yangoku.

IMISEBENZI YOKUSEBENZISWA KWE-USER

Imisebenzi e-AWK ichazwa ngale ndlela ilandelayo:

Igama lomsebenzi ( uludwe lweparimeter ) { izitatimende }

Imisebenzi iyenziwa xa ibizwa ukuba ivela kwiintetho kwiipateni okanye kwizenzo. Iiparitha ezikhoyo ezinikezelwa kumsebenzi wocingo zisetyenziselwa ukuqinisekisile iiparameter ezisemthethweni ezichazwe kumsebenzi. Iimpawu zigqityiwe ngokubhekiselele, ezinye iinguqu zigqitywa ngexabiso.

Ekubeni imisebenzi ayizange ibe yinxalenye yelwimi lwe-AWK, ukubonelelwa kweenguqu zengingqi kunokuba kunzima kakhulu: Ziyabhengezwa njengeeparameters ezongezelelweyo kwiphepha lepharamitha. Idibano ikwahlula uguquko lwendawo ukusuka kwii-parameters zangempela ngeendawo ezongezelelweyo kwiluhlu lwepharamitha. Umzekelo:

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

Umzali osekhohlo kumsebenzi wocingo kufuneka ukuba alandele ngokukhawuleza igama lomsebenzi, ngaphandle kwesithuba esiphezulu esimhlophe. Oku kukugwema ukungalingani ngokucwangcisa kunye nomqhubi we-concatenation. Lo thintelo awusebenzi kwimisebenzi eyakhelwe apha ngasentla.

Imisebenzi inokuqhagamshelana kwaye ingaba yinto ephindaphindiweyo. Iiparameters zomsebenzi ezisetyenziselwa ukuguqulwa kwendawo ziqaliswe kumtya ongenanto kunye nenombolo zero emva kokukhutshwa komsebenzi.

Sebenzisa i- expr yokubuyisela ukubuyisela ixabiso ukusuka kumsebenzi. Ixabiso lokubuyiselwa alizange lichazwe ukuba akukho naxabiso linikezelwa, okanye ukuba umsebenzi ubuyisela '`ukuwa' 'ekupheleni.

Ukuba i- iqlomelo inikwe, i- gawk ilumkisa malunga neefowuni kwimisebenzi engafanelekanga ngexesha lexesha, endaweni yokuhamba ngexesha. Ukubiza umsebenzi ongachazwanga ngexesha lokugijima kuyiphutha elibulalayo.

Igama elithi func linokusetyenziswa kwindawo yokusebenza .

UKUQALA IMISEBENZI ENTSHA

Ukuqala nge-3.1 ye- gawk , unokwenza ngokuzenzekelayo imisebenzi entsha eyakhelwe kuyo kwi- translator gawk . Iinkcukacha ezipheleleyo zingaphezu kweli phepha leencwadi; jonga i- GAWK: I-AWK ye-Programming esebenzayo yeenkcukacha.

ukongezwa ( into , umsebenzi )

Qhagamshelana ngokuqinileyo kwifayile yezinto ezabelwana ngayo enegama, kwaye ucele umsebenzi kuloo nto, ukwenza uqaliso. Ezi zinto zifanele zibonelelwe njengezixhobo. Ibuyisela ixabiso elibuyiselwe ngumsebenzi .

Lo msebenzi unikezwa kwaye uxwebhu lwe- GAWK: I-AWK ye-Programming esebenzayo , kodwa yonke into malunga nale nxalenye iyakushintsha ekukhululweni okulandelayo. Sincoma ukuba ungayisebenzisi le nto nayiphi na into ongafuni ukuyenza kwakhona.

IIMISEBENZI

i-pgawk yamkela iimpawu ezimbini. I-SIGUSR1 ibangela ukuba ilahle iphrofayili kunye nomsebenzi wokufaka ucingo kwifayili yefayile, mhlawumbi i- awkprof.out , okanye nayiphi na ifayile ebizwa ngokuba yiyo- inketho yokukhetha. Kuyaqhubeka ukuqhuba. I-SIGHUP ibangela ukuba ilahle iphrofayili kunye nomsebenzi wekhowudi yocingo uze uphume.

I MI ZEKELO

Phrinta uze uhlele amagama angena ngemvume kubo bonke abasebenzisi: BEGIN {FS = ":"} {shicilela i-$ 1 | "hlela"} Bala imigca kwifayile: {nlines ++} END {print print} Ulungelelanisa umgca ngamnye ngenombolo kwifayile: {phrinta i-FNR, $ 0} Qinisekisa kunye nenombolo yomgca (ukuhluka kwimixholo): {phrinta i-NR, $ 0}

Ngaphakathi

Amanqwanqwa angamaqhosha ahamba ngokulandelelana kwabantu abalinganiswa kwiingcaphula ezimbini. Kwiindawo ezingabonakaliyo zesiNgesi, kunokwenzeka ukuphawula iinkalo kwiprogram ye-AWK njengoko ufuna ukuguqulelwa kolwimi lwendalo. Iinkalo ezinjalo ziphawulwe kwiprogram ye-AWK kunye nomgca okhokelayo (`` _ ''). Umzekelo,

gawk 'QALA {phrinta "bonise, ihlabathi"}'

soloko ikhupha i- hello, ihlabathi . Kodwa,

gawk 'QAPHELA {phrinta _ "bonisi, hlabathi"}'

unokushicilela i- heljour, i-world eFransi.

Kukho amanyathelo athile abandakanyekayo ekuveliseni nasekusebenzeni inkqubo ye-AWK ekhoyo.

1.

Yongeza INQUBO yesenzo ukunika ixabiso kwi TEXTDOMAIN ukutshintsha ukusetha isizinda sobume kwigama ehambelana nenkqubo yakho.


QALA {TEXTDOMAIN = "myprog"}

Oku kuvumela ugugu ukufumana ifayile ye .mo ehambelana nenkqubo yakho. Ngaphandle kwesi sinyathelo, ukugubungela kusetyenziswa isizinda sobume beetekisi , mhlawumbi asiququkisi iprogram yakho.

2.

Maka zonke iimpawu ezifuneka ziguqulelwe ngokukhokelela.

3.

Ukuba kuyimfuneko, sebenzisa i- dcgettext () kunye / okanye i- bindtextdomain () imisebenzi yakho kwiprogram yakho, ngokufanelekileyo.

4.

Qhawula i- gawk -gen-po -f myprog.awk> myprog.po ukudala ifowuni ye .popo kwenkqubo yakho.

5.

Ukubonelela ngeenguqulelo ezifanelekileyo, nokwakha nokufaka ifowuni efanayo .mo .

Iinkalo zezizwe ngezizwe zichazwe ngokubanzi iinkcukacha kwi- GAWK: Inkqubo ephumelelayo ye-AWK .

Ukuhambelana kwePosix

Injongo ephambili yokuguqulwa kukuhambelana nomgangatho wePOSIX , kunye neenguqu zakutsha ze-UNIX awk . Kule nto, i- gawk ifaka izixhobo ezibonakalayo ezibonakalayo zomsebenzisi ezingachazwanga kwincwadi ye-AWK, kodwa ziyinxalenye ye-Bell Laboratories version ye- awk , kwaye i-standard POSIX.

Incwadi ibonisa ukuba isabelo somgca wendlela yomyalelo senzeke xa i- awk ingavumelekile ukuvula ingxabano njengefayile, elandela emva kokuba iBGGIN ibanjwe. Nangona kunjalo, ekuphunyezweni kwangaphambili, xa isabelo eso sibonakala phambi kweyiphi na ifayile yamagama, isabelo sasiza kwenzeka ngaphambi kokuba i- BEGIN ibhloko iqhutywe. Izicelo zixhomekeke kule nxalenye ``. 'Xa u- awk utshintshile ukufanisa amaxwebhu alo, i-- v inketho yokunikezela izinto eziguquguqukileyo ngaphambi kokuphunyezwa kwenkqubo kwongezwa ukulungiselela izicelo ezixhomekeke ekuziphatheni komdala. (Le nto yavunyelwana yiBell Laboratories kunye nabaphuculisi be-GNU.)

I -Okhetho yokulungiselela ukusetyenziswa kweempawu ezithile zivela kumgangatho wePOSIX.

Xa uqhuba iingxabano, ugugu usebenzisa ikhetho ekhethekileyo ethi `` - '' ukubonisa ukuphela kweengxabano. Ngendlela yokuhambelana, iyalumkisa malunga kodwa ngaphandle kwayo iyayilahla izinketho ezingabonakaliyo. Ngokusebenza ngokuqhelekileyo, iziphakamiso ezinjalo zidluliselwa kwinkqubo ye-AWK yokusebenza.

Incwadi ye-AWK ayichazi ixabiso lokubuyiselwa kwe- srand () . Umgangatho we-POSIX ubuyisela imbewu eyayiyisebenzisayo, ukuvumela ukugcina umkhondo wendlela yokulandelelana kwenani. Ngoko ke () kwi- gawk iphinda ibuyise imbewu yayo yangoku.

Ezinye iinkalo ezintsha: Ukusetyenziswa kweendlela ezininzi (ukusuka kwi-MKS awk ); I- ENVIRON ; i- \ a , kunye \ v ukulandelwa kwendlela (eyenziwe ekuqaleni kwi- gawk kunye nokutya kwakhona kwi-Bell Laboratories version); i- downlower () kunye ne- toupper () eyakhelwe kwimisebenzi (ukusuka kwi-Bell Laboratories version); kunye ne-ANSI C icatshulwa kwiprintf (eyenziwe kuqala kwi-Bell Laboratories version).

Iimpawu Zembali

Kukho iinkalo ezimbini zeenkqubo ze-AWK zeembali ezixhasa i- gawk . Okokuqala, kunokwenzeka ukubiza ubude () umsebenzi owakhiwe kungekhona nje ngaphandle kwengxabano, kodwa nangaphandle kobazali! Ngaloo ndlela,

= ubude # i-Holy Algol 60, Batman!

lifana naluphi na

= ubude ()
= ubude (i $ 0)

Lo mbhalo ukhankanywe ngokuthi `` uchithekile '' kumgangatho wePOSIX , kwaye i- gawk ikhupha isilumkiso malunga nokusetyenziswa kwayo ukuba - isalathiso icacisiwe kumgca womyalelo.

Enye impawu kukusetyenziswa kokuqhubeka okanye izitatimende zekhefu ngaphandle komzimba wexeshana , kuba , okanye ukwenza i- loop. Ukuphunyezwa kwe-AWK yendabuko kuyenziwe ukusetyenziswa okufana nokulinganayo kwitekisi elandelayo . IGawk isekela le ntsebenziswano ukuba -ixesha elichaziweyo lichaziweyo .

GNU Extensions

IGawk inenani lezandiso kwi-POSIX awk . Bachazwe kweli candelo. Zonke izandiso ezichazwe apha zingakhubazeka ngokufaka i- gawk ne- optional options .

Iinkalo ezilandelayo ze- gawk azifumaneki kwi-POSIX awk .

*

Akukho ndlela yophando eyenziwa kwiifayile ezibizwa nge-- f option. Ngako oko i- AWKPATH yeemeko zendalo hayi eyodwa.

*

Ukulandelana \ x ukulandelwa. (Ukukhubazeka kunye ne- postposi ).

*

Umsebenzi wefflush () . (Ukukhubazeka kunye ne- postposi ).

*

Ukwazi ukuqhubeka nemigca emva ? kunye :. (Ukukhubazeka kunye ne- postposi ).

*

Iimpawu ze-Octal kunye ne-hexadecimal kwiinkqubo ze-AWK.

*

I- ARGIND , BINMODE , ERRNO , LINT , RT kunye ne- TEXTDOMAIN ziguquko azikhethekanga .

*

I-variable ye- IGNORECASE kwaye iziphumo zecala azifumaneki.

*

Intsimi ye- FIELDWIDTHS kunye nobuninzi obubanzi obudibeneyo .

*

Uhlobo lwe- PROCINFO alufumaneki.

*

Ukusetyenziswa kwe- RS njengento ebonisa rhoqo.

*

Iifayile ezikhethekileyo zefayile ezifumanekayo kwi-I / O yokubuyela kwi-redirection azibonakalwanga.

*

I- &

*

Ukukwazi ukwahlula abalinganiswa ngabanye usebenzisa intambo engekho phantsi njengexabiso le- FS , kwaye njengengxabano yesithathu yokwahlukana () .

*

Ingqungquthela yokhetho lwesibini kumsebenzi wokuvala () .

*

Ingxabano yesithathu yokhetho kumsebenzi () .

*

Ukukwazi ukusebenzisa izicatshulwa zemiqathango ngeprintf kunye ne- sprintf () .

*

Ukusetyenziswa kwecandelo lokucima ukucima yonke into ebhalwe kuyo.

*

Ukusetyenziswa kweefayile ezilandelayo ukuyeka ukusetyenziswa kwefayili yongeniso yangoku.

*

I- and () , i- asort () , bindtextdomain () , compl () , dcgettext () , gensub () , lshift () , mktime () , okanye () , rshift () , strftime () , strtonum () , systime () kunye ne- xor () imisebenzi.

*

Izixhobo ezikhoyo.

*

Ukongeza imisebenzi emitsha ekwakhiweyo ngokuzenzekelayo kunye nokwandisa () umsebenzi.

Incwadi ye-AWK ayichazi inani lokubuyela lomsebenzi wokuvala () . Isondlo sikaGawk () sibuyisela ixabiso ukusuka kwintsimbi (3), okanye i- pclose (3), xa uvala ifayile yokuphuma okanye ipayipi, ngokulandelanayo. Ibuyisela isimo sokuphuma kwenkqubo xa uvala umbhobho wokufakelwa. Ixabiso lokubuyisela li--1 ukuba ifayili egqityiweyo, ipayipi okanye inkqubo yokubambisana ayivulekanga nge-redirection.

Xa i- gawk ifunyenwe nge- optional - optional , ukuba i- fs ingxabano kwi-- F inketho yi `` t '', ngoko iFS isetyenziswe kwisicatshulwa sethebhu . Qaphela ukuba ukuthayipha i- gawk -F \ t ... kubangele ukuba igobolondo icacise '`,' ', kwaye ayidluli'` \ t '' kwi -F option. Ekubeni le yimeko ekhethekileyo engalunganga, akusikho ukuziphatha okungazenzisiyo. Le mpazamo ayenzeki nokuba i- postx icacisiwe. Ukufumana umgca wethebhu njengendawo yokuhlukanisa intsimi, kulungile ukusebenzisa izicatshulwa ezilodwa : gawk -F '\ t' ....

Bona ezinye imiyalelo : linda , lp , ugcwalise , ufeze , ufumane , u- ioctl , uniq , rmmod , pvcreate , rsh , unix2dos , cal , fs , cd , iwpriv , swapon , i- autofs , intetho , i- motd , i- free , i- lpr , i- execl , i- fdisk , , ngubani , iwconfig , ifconfig , vgdisplay , open , lsmod , ntohs , mailq , bulala , wtmp