Umlotha - Linux Command - Unix Command

NAME

umhumushi we-sh - umyalo ( igobolondo )

SYNOPSIS

sh [- / + aCefnuvxIimqsVEbc ] [- o igama elide ] -amazwi [ okuhloswe ... ]

DESCRIPTION

Sh ngumhumushi womyalo ojwayelekile wesistimu. Inguqulo yamanje ye- sh isendleleni yokuguqulwa ukuze ihambisane ne- POSIX 1003.2 kanye ne-1003.2a imininingwane yegobolondo. Le nguqulo inezici eziningi ezenza ukuthi zivele zifanane kwezinye izici kugobolondo leKorn, kodwa akuyona i-shell ye-shell ye-Korn (bheka ksh (1)). Izici kuphela ezikhethwe i- POSIX kanye nezandiso ezimbalwa ze-Berkeley, zifakwe kulolu gebolondo. Silindele ukuhambisana kwe- POSIX ngesikhathi 4.4 BSD ikhishwa. Leli khasi lendoda alihlosiwe ukufundisa noma ukucaciswa okuphelele kwegobolondo.

Sibutsetelo

Igobolondo ngumyalo ofunda imigqa evela kufayela noma ekugcineni, uhumusha, futhi ngokuvamile uqhuba ezinye imiyalo. Kuyinto uhlelo olusebenzayo uma umsebenzisi engena ohlelweni (nakuba umsebenzisi angakhetha igobolondo ehlukile nomyalo we-chsh (1)). Igobolondo isebenzisa ulimi olunezilawuli zokulawula ukugeleza, isikhungo esikhulu esihlinzeka ngezici ezihlukahlukene ngaphezu kokugcinwa kwedatha, kanye nokwakhiwa kwamakhono nomlando wokuhlela umugqa. Ihlanganisa izici eziningi zokusiza ukusetshenziswa okusebenzisana futhi kunenzuzo yokuthi ulimi lokuhumusha luvame ukusetshenziswa kokubili okusebenzisana nokungasebenzisi okuphakathi (ama-shell scripts). Okusho ukuthi, imiyalo ingafakwa ngqo kwigobolondo egijima noma ingafakwa efayeleni futhi ifayela lingenziwa ngokuqondile ngegobolondo.

Ukucela

Uma engekho ama-args akhona futhi uma ukufaka okujwayelekile kwegobolondo kuxhunywe ku-terminal (noma uma i- i- flag ihlelwe), futhi ukhetho lwe- c alukho, igobolondo ibhekwa njengegobolondo elihlangene . Igobolondo elihlangene ngokuvamile lihamba phambili ngaphambi komyalo ngamunye futhi ilawula amaphuzu nokuhlela amaphutha ngokuhlukile (njengoba kuchazwe ngezansi). Uma uqala kuqala, igobolondo lihlola ukuphikisana oku-0, futhi uma iqala ngedashithi `- 'igobolondo nayo ibhekwa njengegobolondo yokungena ngemvume. Lokhu kuvame ukwenza ngokuzenzekelayo yi-system uma umsebenzisi kuqala engena ngemvume. Igobolondo lokungena ngemvume lifunda kuqala imiyalo evela kumafayela / njll / iphrofayli kanye .profile uma ikhona. Uma i- ENV eguquguqukayo yemvelo isethwe ekungeneni kwigobolondo, noma isethwe ku-.profile yegobolondo yokungena ngemvume, igobolondo ifunda ngokulandelayo imiyalo evela efayeleni ebizwa nge- ENV Ngakho-ke, umsebenzisi kufanele abeke imiyalo ezokwenziwa kuphela isikhathi sokungena kufayela .profile, nemilayezo eyenziwa yonke igobolondo ngaphakathi kwefayela le- ENV . Ukusetha ukuguquguquka kwe- ENV kwelinye ifayela, faka umugqa olandelayo ku-.profile yakho yerekhodi lakho lasekhaya

ENV = $ HOME / .shinit; ukuthekelisa i-ENV

ngokufaka esikhundleni `` .shinit '' noma yiliphi igama lefayela olifisayo. Njengoba ifayela le- ENV lifundwa zonke izicelo zegobolondo, kufaka phakathi izikripthi zegobolondo namagobolondo angenakuxhumana, i-paradigm elandelayo iyasiza ukuvimbela imiyalo efonini ye - ENV ukuze kukhulunywe ngokuhlanganyela. Beka imiyalo ngaphakathi `` icala '' ne `` esac '' ngezansi (le miyalo ichazwa kamuva):

icala $ - ku * i *)

Imilayezo engu- # yokusetshenziswa okusebenzisana kuphela

...

esac

Uma iziphakamiso zomugqa womyalo ngaphandle kwezinketho zicacisiwe, khona-ke igobolondo ithatha ingxabano yokuqala njengegama lefayela lapho kufanele ufunde khona imiyalo (iskripthi segobolondo), futhi izingxabano ezisele zibekwe njengemingcele yemibandela yegobolondo ($ 1 , $ 2, njll). Ngaphandle kwalokho, igobolondo ifunda imiyalo evela ekufakweni kwayo okujwayelekile.

Uhlu Lokuphikisana Lokucubungula

Zonke izinketho zezincwadi ezilodwa zinegama elifanayo elingasetshenziswa njengengxabano ku- o- option. Igama le-set - o linikezwa eceleni kwenketho eyodwa yezincwadi kule ncazelo ngezansi. Ukucacisa idatha `` - '' kuvula ukukhetha, ngenkathi usebenzisa i-`` + '' ikhubaza inketho. Okukhethwa kukho okulandelayo kungasethiwe kusuka kumugqa womyalo noma ngesethi (1) eyakhiwe (echazwe kamuva).

-a allexport

Thumela zonke iziguquko ezinikezwe. (UKUSEBENZISWA ngo-4.4alpha)

-c

Funda imiyalo esuka emgqeni wokulayela. Ayikho imiyalo eyofundwa kusukela kokufaka okujwayelekile.

-C noclobber

Ungabhalisi amafayela akhona nge ``> '' (UNIMPLEMENTED for 4.4alpha)

-e errexit

Uma kungenakwenzeka, phuma ngokushesha uma umyalo ongafundiwe uhluleka. Isimo sokuphuma somyalo sicatshangwa ukuthi sivivinywe ngokucacile uma umyalo usetshenziselwa ukulawula uma i- elif ngenkathi noma kuze kube noma uma umyalo ungowokusebenza kwesokunxele se-`` && '' noma `` || ''.

-f noglob

Khubaza ukukhuliswa kwegama lomzila .

-n noexec

Uma ungahlanganyeli, funda imiyalo kodwa ungawasebenzisi. Lokhu kuyasiza ukuhlola i-syntax yezikripthi zegobolondo.

-u amagamabela

Bhala umlayezo wephutha elijwayelekile uma uzama ukwandisa ukuguquguquka okungahleliwe, futhi uma igobolondo ingasebenzi, phuma ngokushesha. (UKUSEBENZISWA ngo-4.4alpha)

-v verbose

Igobolondo ibhala okokufaka kwiphutha elijwayelekile njengoba lifundwa. Iwusizo ekusebenziseni ukulungisa iphutha.

-x xtrace

Bhala umyalo ngamunye kwisiphambeko esijwayelekile (esandulelwe '`+ ngaphambi kokuba senziwe.).

-q i- silenceprofile

Uma izinketho ze- v noma- x zihlelwe, ungazisebenzisi uma ufunda amafayela okuqala, lokhu kube / njll / iphrofayili .profile nefayela elichazwe yi- ENV yemvelo.

-Nginandaba

Hlukana no-EOF kusuka ekufakweni ngenkathi kuhlanganyela.

-i interactive

Qinisekisa igobolondo ukuthi iphathe ngokuhlanganyela.

-m ukuqapha

Vula ukulawulwa komsebenzi (setha ngokuzenzekelayo uma uxhumana).

-s stdin

Funda imiyalo evela kokufaka okujwayelekile (setha ngokuzenzekelayo uma kungekho izingxabano zefayela ezikhona). Le nketho ayinayo impumelelo uma isethwe ngemuva kwegobolondo isivele iqalile ukusebenza (ie nge setha (1)).

-V vi

Nika amandla umhleli womugqa we-vi (1) wakhelwe ngaphakathi (ukhubaza - E uma usethe).

-E emacs

Nika amandla umhleli womugqa womyalo woku-emacs (1) owakhiwe (ukhubaza - V uma usethelwe).

-b yazise

Vumela isaziso esingenasisekelo sokuqedela umsebenzi wangemuva. (UKUSEBENZISWA ngo-4.4alpha)

Isakhiwo seLexical

Igobolondo ifunda okokufaka ngokwemigqa evela efayeleni iphinde iyiphule emagama emahhovisi omhlophe (izikhala kanye namathebhu), kanye nokulandelana okuthile kwezinhlamvu ezikhethekile kwigobolondo okuthiwa `` opharetha '' Kunezinhlobo ezimbili zabasebenzisi: ukulawula ama-opharetha kanye nokuqondisa kabusha ama-opharetha (incazelo yabo ixoxwa kamuva). Ukulandela uhlu lwama-opharetha:

"Lawula opharetha:"

& && (); ;;;; | | ||

"Opharetha wokubuyisela:"

<>> | << >> <&> & << - <>

Ukucaphuna

Ukucaphuna kusetshenziselwa ukususa incazelo ekhethekile yabalingiswa abathile noma amagama kugobolondo, njengama-opharetha, ama-whitespace, noma amagama angukhiye. Kunezinhlobo ezintathu zokucaphuna: ezilinganiselwe izingcaphuno ezilodwa, ezilinganiselwe izingcaphuno ezimbili, nokubuyela emuva.

Ukubuyela emuva

Ukubuyela emuva kugcina incazelo yangempela yomlingisi olandelayo, ngaphandle kwe-Aq entshaline. Ukubuyisela emuva okulandelwa phambili kwe-Aq entshaline kuthathwa njengendlela yokuqhutshwa komugqa.

Ama-Quotes angashadile

Ukufaka izinhlamvu ezincaphuno ezilodwa zigcina incazelo engokoqobo yazo zonke izinhlamvu (ngaphandle kwamacaphuno ayingqayizivele, okwenza kube nzima ukubeka izingcaphuno ezilodwa kwizintambo ezicatshangwe kuphela).

Iziqu ezimbili

Ukufaka izinhlamvu ngaphakathi kwezingcaphuno ezimbili zigcina incazelo engokoqobo yazo zonke izinhlamvu ngaphandle kwe-dollarsign ($) i-backquote (`) ne-backslash (\) Ukubuyela emuva ngaphakathi kwamacaphuni kabili kungokomlando, futhi kusebenza ukucaphuna kuphela izinhlamvu ezilandelayo:

$ `\

Uma kungenjalo lihlala lingokoqobo.

Amazwi agodliwe

Amagama agodliwe ngamagama anencazelo ekhethekile kugobolondo futhi ayaziwa ekuqaleni komugqa nangemva kokuphawula. Okulandelayo ngamagama agodliwe:

! Qhubeka Bhala ukubuyekeza Hambisa ukubuyekeza Ukubuyekeza kwami ​​Buyekeza kusukela ku- Izibuyekezo

okunye Ta Ta Ta ke Ta {Ta}

Yenza u-Ta kuze kube nguTa uma u-Ta esac

Incazelo yabo ichazwe kamuva.

Ukungafani

I-alias igama kanye nenani elihambelanayo elibekwe ngokusebenzisa i- alias (1) umyalo owakhiwe. Njalo uma igama eligcinwe lingase livele (bheka ngenhla), nangemva kokuhlola amagama agodliwe, igobolondo lihlola igama ukuze libone uma lihambisana nendawo. Uma kuyenzeka, kuyishintsha kulokusakaza kokufaka ngenani layo. Isibonelo, uma kukhona i-alias ebizwa ngokuthi `` lf '' ngenani `` ls -F '' bese okokufaka:

Uma u-foobar

bekuyoba

ls -F foobar

Ukuphazamiseka okuhlinzekwayo kunikeza indlela elula yabasebenzisi abangenayo i-naive ukudala ama-shorthands emiyalo ngaphandle kokuthi bafunde indlela yokudala imisebenzi ngezimpikiswano. Zingahle zisetshenziselwe ukwakha ikhodi engafihlekile. Lokhu ukusetshenziswa kudikibala.

Imiyalo

Igobolondo lihumusha amagama afundwayo ngolimi, incazelo engaphandle kwekhasi lamadoda (bhekani ku-BNF kumqulu we- POSIX 1003.2). Nokho, ngokuyinhloko, umzila ufundwa futhi uma igama lokuqala lomugqa (noma ngemuva kwe-opharetha wokulawula) lingelona igama eligcinwe, igobolondo liye labona umyalo olula. Uma kungenjalo, umyalo oyinkimbinkimbi noma omunye ukwakhiwa okhethekile kungenzeka waqashelwa.

Izimiso ezilula

Uma umyalo olula uye waqaphela, igobolondo yenza lokhu okulandelayo:

  1. Amagama ahamba phambili efomu elithi `` name = value '' aqothulwe futhi anikwe imvelo yomyalo olula. Ama-opharetha wokubuyisela kanye nezimpikiswano zawo (njengoba kuchazwe ngezansi) zihluthuliwe futhi zigcinwe ukucubungula.
  2. Amagama asele anwetshiwe njengoba kuchaziwe esigabeni esithi `` Expansions '' futhi igama lokuqala elisele libhekwa njengegama lomyalo nomyalo. Amagama asele abhekwa njengengxabano yomyalo. Uma kungekho igama lomyalo eliholele, khona-ke '`= name = value' 'izabelo ezihlukahlukene ezibonakala entweni 1 kuthinta igobolondo yamanje.
  3. Ukulungiswa kabusha kwenziwa njengoba kuchazwe esigabeni esilandelayo.

Ukubuyisela kabusha

Ukulungiswa kabusha kusetshenziselwa ukushintsha lapho umyalo ufunda khona okokufakwayo noma uthumela ukukhipha kwawo. Ngokuvamile, ukulungiswa kuvulekile, kuvaliwe, noma kuphinde kubhekiswe ireferensi ekhona efayeleni. Ifomethi jikelele esetshenziselwa ukuqondiswa kabusha yi:

[n] ifayela le-redir-op

lapho i- redir-op ingomunye wabaqhubi be-redirection okukhulunywe ngabo ngaphambili. Ukulandela uhlu lwama-redirection. I-Bq n iyinombolo yokuzikhethela, njengokuthi `3 '(hhayi' Bq 3 'ebhekisela kumchazi wefayela.

[n]> ifayela

Phinda uqondise ukukhipha okujwayelekile (noma n) ukuze ufake.

[n]> | ifayela

Ngokufanayo, kodwa ukwedlula ukhetho lwe- C .

[n] >> ifayili

Faka isicelo sokukhishwa okujwayelekile (noma n) ukuze ufake.

[n]

Phinda uqondise kabusha ukufaka okujwayelekile (noma n) kusuka kufayili.

[n1] <& n2

Phinda ufake ukufaka okujwayelekile (noma n1) kusuka kusihlungi sefayela n2.

[n] <&

Vala okokufaka okujwayelekile (noma n).

[n1]> & n2

Ukukhipha okujwayelekile okuphindaphindiwe (noma n1) kusuka ku-n2.

[n]> &

Vala ukukhishwa okujwayelekile (noma n).

[n] <> ifayela

Vula ifayela lokufunda nokubhala ngokufaka okujwayelekile (noma n).

Ukuhlelwa okulandelayo kuvame ukubizwa ngokuthi `` lapha-document ''

[n] << i-delimiter

lapha-doc-umbhalo ...

i-delimiter

Yonke imibhalo emigqeni elandelanayo kuze kufike ku-delimiter ilondolozwe kude futhi yenziwe itholakale kumyalo wokufaka okujwayelekile, noma isichazamazwi sefayela n uma kuchaziwe. Uma i-delimiter njengoba ichaziwe kumgqeni wokuqala ucashunwe, khona-ke umbhalo we-doc-umbhalo uphathwa ngokwezwi, kungenjalo umbhalo ubhekene nokukhuliswa kwepharamitha, ukufaka endaweni esikhundleni, nokukhuliswa kwe-arithmetic (njengoba kuchaziwe esigabeni esithi `` Expansions) ' 'Uma ngabe opharetha ngu `` << -' 'kunokuba `` <<' 'bese uhola amathebhu ku-doc-text lapha.

Ukusesha nokuPhathwa

Kunezinhlobo ezintathu zemilayezo: imisebenzi yegobolondo, imiyalo eyakhiwe, nezinhlelo ezijwayelekile - futhi umyalo usesho (ngamagama) ngaleyo oda. Zonke zibulawa ngendlela ehlukile.

Uma umsebenzi wegobolondo ukwenziwa, zonke izilinganiso ze-shell shell (ngaphandle kwe-$ 0, okungahlala zingashintshi) zibekwe ezimpikweni zomsebenzi wegobolondo. Izinguquko ezibekwe ngokucacile emvelweni womyalo (ngokubeka izabelo kubo ngaphambi kwegama lomsebenzi) zenziwa zendawo endaweni futhi zibekwe kumanani anikeziwe. Khona-ke umyalo onikezwe ngencazelo yomsebenzi ukwenziwa. Imingcele ye-positional ibuyiselwe kumanani awo okuqala uma umyalo uqeda. Konke lokhu kwenzeka ngaphakathi kwegobolondo yamanje.

Ama-Shell buildins abulawa ngaphakathi kugobolondo, ngaphandle kokuveza inqubo entsha.

Uma kungenjalo, uma igama lomyalo lingavumelani nomsebenzi noma okwakhiwe, umyalo usesho njengendlela evamile ohlelweni lwefayela (njengoba kuchazwe esigabeni esilandelayo). Uma uhlelo olujwayelekile lwenziwa, igobolondo iqhuba uhlelo, idlulise izimpikiswano kanye nemvelo ohlelweni. Uma lolu hlelo aluyona ifayela elijwayelekile eliphathekayo (okungukuthi, uma lingaqala nge "inombolo yomlingo" omelelwa yi- ASCII "#!", Ngakho-ke i-execve (2) ibuyisa i-Er ENOEXEC ke) igobolondo izohumusha lolu hlelo i-subshell. Igobolondo lezingane lizovuselela kabusha kulokhu, ukuze umphumela uzoba njengokungathi igobolondo elisha liye lahlelwa ukusingatha iskripthi segobolondo lesikhangiso, ngaphandle kokuthi indawo yemilayezo evulekile ekhonjiwe lomzali izokhunjulwa ingane.

Qaphela ukuthi izinguqulo zangaphambilini zalolu dokhumenti kanye nekhodi yomthombo ngokwayo zidukisa futhi ngokuphindaphindiwe zibhekisela kwiskripthi segobolondo ngaphandle kwenombolo yemilingo njenge "inqubo yegobolondo".

Indlela yokusesha

Lapho uthola umyalo, igobolondo kuqala ibukeka ukuze ibone ukuthi ikhona yini umsebenzi wegobolondo ngalelo gama. Bese kubheka umyalo owakhiwe yilo gama. Uma umyalo owakhiwe ungatholakali, enye yezinto ezimbili zenzeka:

  1. Amagama amabi aqukethe slash amane abulawa ngaphandle kokwenza noma yikuphi ukusesha.
  2. Igobolondo ifuna ukungena ngayinye ku- PATH ngokuya komyalo. Inani le- PATH eliguqukayo kufanele libe uchungechunge lwezingeniso ezihlukaniswe ngamakholoni. Ukungena ngayinye kuqukethe igama lomhlahlandlela. Isiqondisi samanje singaboniswa ngokucacile ngegama elingenalutho lwemibhalo, noma ngokucacile ngenkathi eyodwa.

Isimo sokuphuma sokuphuma

Umyalo ngamunye unesimo sokuphuma esingathonya ukuziphatha kweminye imiyalo yegobolondo. I-paradigm yukuthi umyalo uphuma nge-zero ngokujwayelekile noma impumelelo, futhi akuyona i-zero yokuhluleka, iphutha, noma isibonakaliso samanga. Ikhasi lomuntu ngomyalo ngamunye kufanele libonise amakhodi ahlukene aphuma kanye nalokho okushoyo. Ukwengeza, imiyalo eyakhelwe kabusha ibuya amakhodi wokuphuma, njengoba kwenza umsebenzi wegobolondo owenziwe.

Izimiso eziyinkimbinkimbi

Imiyalo enzima iyinhlanganisela yemilayezo elula ne-control operators noma amagama agciniwe, ndawonye ukudala umyalo omkhulu onzima. Ngokuvamile, umyalo ungenye yalezi ezilandelayo:

  • umyalo olula
  • ipayipi
  • uhlu noma uhlu lwamakhemikhali
  • umyalo ohlanganisiwe
  • incazelo yencazelo

Ngaphandle kokuthi kuchazwe ngenye indlela, isimo sokuphuma somyalo singomyalo wokugcina olula owenziwa ngumyalo.

Amapayipi

Iphayiphu ilandelana nomyalo owodwa noma ngaphezulu ohlukaniswe opharetha wokulawula |. Ukukhishwa okujwayelekile kwabo bonke kodwa umyalo wokugcina kuxhumeke ekufakeni okujwayelekile komyalo olandelayo. Umkhiqizo ojwayelekile womyalo wokugcina uzuze njengefa kugobolondo, njengokujwayelekile.

Ifomethi yepayipi yilezi:

[!] umyalo1 [| umyalo2 ...]

Ukukhishwa okujwayelekile komyalo 1 kuxhunywe ekufakeni okujwayelekile komyalo2. Ukufaka okujwayelekile, ukukhishwa okujwayelekile, noma kokubili umyalo kubhekwa ukuthi kunikezwe iphayiphi ngaphambi kokuhlelwa kabusha okushiwo yi-opharetha okuqondisa kabusha okuyingxenye yomyalo.

Uma iphayiphi ingasemuva (okuxoxwe kamuva), igobolondo ilinde yonke imiyalo yokuqedela.

Uma igama eligcinwe! ayihambi ngaphambi kwephayiphi, isimo sokuphuma yisimo sokuphuma somyalo wokugcina ochazwe kuphayiphi. Uma kungenjalo, isimo sokuphuma siyisimo esinqunyiwe HAPHI isimo sokuphuma somyalo wokugcina. Okungukuthi, uma umyalo wokugcina ubuya zero, isimo sokuphuma singu-1; uma umyalo wokugcina uphindela okukhulu kunezero, isimo sokuphuma si-zero.

Ngoba ukunikezwa kwephayiphi kokufaka okujwayelekile noma ukukhishwa okujwayelekile noma kokubili kwenzeka ngaphambi kokuhlelwa kabusha, kungashintshwa ngokuhlelwa kabusha. Ngokwesibonelo:

$ command1 2> & 1 | umyalo2

ithumela kokubili ukukhishwa okujwayelekile kanye nephutha elijwayelekile lomyalo1 kuya kokufaka okujwayelekile komyalo2.

A; noma ibangela uhlu olulandelayo no-OR (oluchazwe ngokulandelayo) oluzokwenziwa ngokulandelana; a & kubangela ukusebenza okungafaniyo kohlu olulandelayo no-OR.

Qaphela ukuthi ngokungafani nezinye izigobolondo, inqubo ngayinye epayipi ingumntwana wegobolondo evukelayo (ngaphandle uma i-shell shell eyakhelwe ngaphakathi, lapho kwenzeka khona igobolondo yamanje - kodwa noma yimuphi umphumela onayo emvelweni isuliwe).

Izimiso zangemuva -

Uma umyalo unqanyuliwe yi-ampersand yokulawula (&), igobolondo yenza umyalo njenge-asynchronously - okungukuthi, igobolondo alinde ukuba umyalo uqede ngaphambi kokukhipha umyalo olandelayo.

Ifomethi yokusebenzisa umyalo osemuva yile:

umyalo1 & [command2 & ...]

Uma igobolondo ingasebenzi, ukufaka okujwayelekile komyalo ongenamathelisi kusethelwe ku- / dev / null

Izincwadi - Ngokuvamile Ukukhuluma

Uhla luhambisana nokulandelana kwe-zero noma ngaphezulu kwemilayezo ehlukaniswe ngamagama amasha, ama-semicolons, noma ama-ampersands, futhi ngokuzenzekelayo unqanyulwe enye yalezi zinhlamvu ezintathu. Imilayezo ohlwini ibulawa ngendlela ebhalwa ngayo. Uma umyalo ulandelwa i-ampersand, igobolondo iqala umyalo futhi ngokushesha uqhubeke nomyalo olandelayo; uma kungenjalo ulinde umyalo wokuqeda ngaphambi kokuqhubeka kokulandelayo.

Uhlu Lwase-Short Circuit Operators

`` && '' futhi `` || '' bangabasebenzisi be-AND-OR ohlwini. `` && '' yenza umyalo wokuqala, bese uqhuba umyalo wesibili iff isimo sokuphuma somyalo wokuqala siyi-zero. `` || '' iyafana, kodwa yenza umyalo wesibili uma isimo sokuphuma somyalo wokuqala kungesiyo. `` && '' futhi `` || '' bobabili banokuqala okufanayo.

I-Flow-Control Yakha - uma, ngenkathi, ngenxa, icala

I-syntax yomyalelo uma

uma uhlu
bese ubhala
[uhlu lwe-elif
bese uhlunga] ...
[olunye uhlu]
fi

I-syntax yomyalo okwamanje yile

ngenkathi uhlu
yenza uhlu
kwenziwe

Izinhlu ezimbili ziphonswa ngokuphindaphindiwe ngenkathi isimo sokuphuma sohlu lokuqala singu-zero. I-kuze kube yilapho umyalo ufana, kodwa unamazwi kuze kube sesikhathini esithile, okubangela ukuba kuphinde kube yilapho isimo sokuphuma sohlu lokuqala singenhla.

I-syntax ye-oda ngomyalo

ngokuguquguquka ngezwi ...
yenza uhlu
kwenziwe

Amagama anwetshiwe, bese uhlu lwenziwa ngokuphindaphindiwe nge-variable echazwe igama ngalinye. ukwenza nokwenza kungashintshwa ngokuthi `` {'' ne ``} ''

I-syntax yekhefu futhi uqhubeke nomyalo

hlukana [num]
qhubeka [num]

Ukuqeda kudonsa inombolo yangaphakathi noma ngenkathi ishiya. Qhubeka uqhubeka nokuhlelwa okulandelayo kwe-innermost loop. Lezi ziqaliswa njengemiyalo eyakhelwe.

I-syntax yomyalo wecala iwukuthi

icala elikulo
uhlu lwephethini) ;;
...
esac

Iphethini ingaba imodeli eyodwa noma ngaphezulu (bona amaphetheni weShell achazwe kamuva), ahlukaniswe izinhlamvu ze `` ''.

Ukuhlanganisa Ukuhlanganisa Kuhlangene

Imiyalo ingahle ihlelwe ngokubhala noma

(uhlu)

noma

{uhlu;

Owokuqala kulawa awenza imiyalo kusikhwama. Imiyalo ye-Builtin efakwe kuhlu (uhlu) ngeke ithinte igobolondo yamanje. Ifomu lesibili alithinti enye igobolondo ngakho isebenza kahle kakhulu. Imiyalo yokuqoqa ndawonye ngale ndlela ikuvumela ukuba uqondise kabusha okukhiphayo njengokungathi kuyilungu elilodwa:

{printf hello; phrinta umhlaba \ n ";}> ukubingelela

Imisebenzi

I-syntax yencazelo yomsebenzi iwukuthi

igama () umyalo

Incazelo yomsebenzi yisitatimende esisebenzayo; uma kukhishwa kufaka umsebenzi ogama lakhe libizwa futhi libuyisela isimo sokuphuma se-zero. Umyalo ngokuvamile uhla oluhlanganiswe phakathi `` {'' no ``} ''

Izinguquko zingashiwo ukuthi zendawo endaweni ethile ngokusebenzisa umyalo wendawo. Lokhu kufanele kubonakale njengesitatimende sokuqala somsebenzi, futhi i-syntax ikhona

indawo [okuguqukayo | -] ...

Indawo yakhiwe njengomyalo owakhiwe.

Uma okuguquguqukayo kwenziwa yendawo, izuze ifa lokuqala futhi ithumela amafulege we-readonly kusuka kuguquguquko negama elifanayo kumkhawulo oseduze, uma kukhona. Uma kungenjalo, okuguquguqukayo ekuqaleni kokusetha. Igobolondo isebenzisa ukukhwabanisa okunamandla, ukuze uma wenza indawo eguquguqukayo x yendawo ukuze isebenze f, ebizwa ngokuthi i-function g, izinkomba eziguquguqukayo x ezenziwe ngaphakathi g zizobhekisela kuguquguquko x ezimemezelwe ngaphakathi f, hhayi ekuguqukisweni komhlaba jikelele okuthiwa x .

Ipharamitha kuphela ekhethekile kunokwenziwa wendawo ukuthi `` - '' Ukwenza `` - '' indawo noma yiziphi izinketho zegobolondo eziguqulwa ngomyalo wokusetha phakathi komsebenzi okuzobuyiselwa kumanani abo okuqala lapho umsebenzi ubuya.

I-syntax yomyalo wokubuyela uyi

buyela [exitstatus

Iqeda umsebenzi okwenzayo okwamanje. Ukubuyiselwa kuqaliswa njengomyalo owakhelwe.

Izinguquko nama-Parameters

Igobolondo igcina isethi yemingcele. Ipharamitha elichazwe igama libizwa ngokuthi liguquguqukile. Uma uqala, igobolondo iguqula zonke izinto eziguquguqukayo zemvelo zibe yizigobolondo eziguqukayo. Izinguquko ezintsha zingasethiwe ngokusebenzisa ifomu

Igama = inani

Izinguquko ezibekwa umsebenzisi kumele zibe negama elihlanganisa kuphela ama-alfabhethi, izinombolo, nokugxila - okuqala akufanele kube yinani. Ipharamitha lingabonakaliswa nenombolo noma uhlamvu olukhethekile njengoba kuchaziwe ngezansi.

Izingqinamba zendawo

Ipharamitha yesikhashana ipharamitha echazwe inombolo (n> 0). Igobolondo ibeka lezi zinto kuqala kumagugu emigqa yalo yomyalo olandela igama lombhalo wegobolondo. Isethi (1) eyakhiwe ingasetshenziswa futhi ukusetha noma ukuyibuyisela kabusha.

Izingqikithi ezikhethekile

Ipharamitha ekhethekile ipharamitha ekhonjiswe ngenye yezinhlamvu ezilandelayo ezikhethekile. Inani lepharamitha lihlelwe eduze kohlamvu lwayo.

*

Iyanda kwimingcele yesikhashana, kusukela kokuqala. Lapho ukwanda kwenzeka ngaphakathi kweyunithi ehlutshulwa kabili kuyanda ensimini eyodwa ngenani lepharamitha ngayinye ehlukaniswe umlingisi wokuqala we-variable ye- IFS , noma uma i- IFS ingasethiwe.

@

Iyanda kwimingcele yesikhashana, kusukela kokuqala. Lapho ukwanda kwenzeka ngaphakathi kwama-quotes aphindwe kabili, i-parameter ngayinye yesimo sanda njengengxabano ehlukile. Uma kungenayo imingcele yesikhashana, ukunwetshwa kwe @ @ kudala izingxabano zero, ngisho nalapho @ kucashunwe kabili. Okushiwo ngokuyisisekelo, isibonelo, uma i-$ 1 ingu `` abc '' futhi i-$ 2 ingu `` def ghi '' bese iQq $ @ ikhula emibikiswaneni emibili:

abc def ghi

#

Iyanda kwinombolo yemingcele yemibandela.

?

Iyanda esimweni sokuphuma sepayipi yakamuva kakhulu.

- (Hyphen.)

Iyanda kumaphakheji okhetho lwamanje (amagama amakhophi owodwa owodwa okukhethwa kukho amakholi angeniswe ngaphakathi kwezintambo) njengoba kuchaziwe ekuceliwe, ngomyalo ohleliwe oqokiwe, noma ngokucacile yigobolondo.

$

Iyanda ku-ID yenqubo yegobolondo elihlosiwe. I-subshell igcina inani elifanayo le-$ njengomzali wayo.

!

Iyanda ku-ID yenqubo yomyalo wangasemuva wangemuva owenziwe kusukela kugobolondo yamanje. Ngombhobho, i-ID yenqubo yileyomyalo wokugcina emgqeni.

0 (Zero.)

Iyanda egameni legobolondo noma i-shell shell.

Ukuchaza kweZwi

Lesi sigaba sichaza ukuhlanjululwa okuhlukahlukene okwenziwe ngamazwi. Akuwona wonke ama-expansiyoni akwenziwa kuwo wonke amazwi, njengoba kuchazwe kamuva.

Ukuhlaziywa kwe-Tilde, ukuphazamiseka kwepharamitha, ukufaka esikhundleni se-command, ukuhlaziywa kwe-arithmetic, nokususwa kwezingcaphuno ezenzeka ngaphakathi kwegama elilodwa ukwandisa ensimini eyodwa. Kuyinto kuphela ukuhlukaniswa kwensimu noma ukuqamba igama elithi extension elingadala amasimu amaningi kusuka kwelinye igama. Okungafani nalomthetho ukukhuliswa kwepharamitha ekhethekile @ ngaphakathi kokucaphuna kabili, njengoba kuchaziwe ngenhla.

Ukuhlelwa kwezwi ukukhulisa yilokhu:

  1. Ukwandiswa kwe-Tilde, Ukukhuliswa kweParameter, Ukufakwa Kwama-Command, Ukwandiswa Kwe-Arithmetic (konke kwenzeka ngesikhathi esisodwa).
  2. Ukuhlukaniswa kwensimu kwenziwa emasimini akhiqizwa isinyathelo (1) ngaphandle kokuthi ukuguquguquka kwe- IFS kungabi nalutho.
  3. Ukwandiswa Kwendama (ngaphandle kokuthi isethi - f isebenza).
  4. Ukususwa kwe-quote.

Umlingiswa we-$ usetshenziselwa ukwethula ukukhuliswa kwepharamitha, ukufaka esikhundleni somyalo, noma ukuhlolwa kwe-arithmetic.

Ukwandisa kwe-Tilde (okufaka esikhundleni somsebenzisi we & # 39; s ekhaya lwemibhalo)

Igama eliqala ngomlingiswa ongasetshenzisiwe (~) lihloselwe ukuhlanganisa ukunwetshwa. Bonke abalingiswa kuze kube yi-slash (/) noma ekupheleni kwegama baphathwa njengegama lomsebenzisi futhi bathathe indawo yomhlahlandlela wasekhaya womsebenzisi. Uma igama lomsebenzisi lingekho (njengalokhu ku ~ ~ / foobar) le tilde ithathelwe indawo nenani le-variable ye- HOME (isiqondisi sasekhaya samanje).

Ukwandiswa kweParameter

Ifomethi yokukhuliswa kwepharamitha kanje:

lapho inkulumo iqukethe bonke abalingiswa kuze kube khona okufanayo ``} '' Noma yikuphi ``} '' kuphunyezwe ukubuyela emuva noma ngaphakathi kwechungechunge ecashunwe, futhi izinhlamvu ezithengiswayo ze-arithmetic ezihlanganisiwe, ukungena esikhundleni somyalo, nokuchasana okuguquguqukayo, azihloliwe ekunqumeni kufanelana ``} ''

Ifomu elilula kakhulu lokukhuliswa kwepharamitha ngu:

Inani, uma likhona, lepharamitha lingeniswa esikhundleni.

Igama lepharamitha noma uphawu lingagcinwa kuma-braces, okukhethwa kukho ngaphandle kwemingcele yemingcele enedijithi engaphezu kweyodwa noma uma ipharamitha lilandelwa umlingisi ongahunyushwa njengengxenye yegama. Uma ukukhuliswa kwepharamitha kwenzeka ngaphakathi kwezingcaphuno ezimbili:

  1. Ukukhuliswa kwegama akukwenziwa kwimiphumela yokwandiswa.
  2. Ukuhlukaniswa kwensimu akukwenziwa kwimiphumela yokwanda, ngaphandle kwe @ @.

Ngaphezu kwalokho, ukukhuliswa kwepharamitha kungashintshwa ngokusebenzisa enye yamafomethi alandelayo.

Sebenzisa izilinganiso ezizenzakalelayo. Uma ipharamitha ingasethiwe noma ayikho, ukukhuliswa kwezwi kushintshiwe; kungenjalo, ukubaluleka kwepharamitha kufakwe esikhundleni.

Nika izilinganiso ezizenzakalelayo. Uma ipharamitha ingasethiwe noma ayikho, ukukhuliswa kwezwi kunikezwe ipharamitha. Kuzo zonke izimo, inani lokugcina lepharamitha lifakwe endaweni. Izinguquko kuphela, hhayi imingcele yemibandela noma imingcele ekhethekile, ingabelwa ngale ndlela.

Khombisa Iphutha uma Null noma Ungasethiwe. Uma ipharamitha ingasethiwe noma ayikho, ukukhuliswa kwegama (noma umlayezo obonisa ukuthi awuhambisani uma igama lishiywe) kubhalelwe iphutha elijwayelekile futhi igobolondo iphuma ngesimo se-non-exit. Uma kungenjalo, ukubaluleka kwepharamitha kufakwe esikhundleni. Igobolondo lokusebenzisana akudingeki liphume.

Sebenzisa i-Alternative Value. Uma ipharamitha ingasethiwe noma ayikho, null ishintshiwe; kungenjalo, ukunwetshwa kwegama kufakwe esikhundleni.

Emaphumeleni wepharamitha aboniswe ngaphambilini, ukusetshenziswa kwekhaloni kufomathi imiphumela ekuvivinyweni kwepharamitha engasethiwe noma ayikho; ukwehluleka kwekhaloni kuphumela ekuvivinyweni kwepharamitha ehlelwa kuphela.

Ubude bezintambo. Ubude kubalingiswa bokubaluleka kwepharamitha.

Izinhlobonhlobo ezine ezilandelayo zokukhuliswa kwepharamitha zinikeza ukucubungula okulandelayo. Esimeni ngasinye, ukulinganisa iphethini (bheka ama-Shell Patterns), kunokuba kube nokuboniswa okuvamile, kusetshenziselwa ukuhlola amaphethini. Uma ipharamitha lingu * noma @, umphumela wokwandiswa awucacisiwe. Ukufaka ucingo lwe-parameter yokunweba okuphelele kuzincaphuno ezimbili akubangeli izinhlamvu ezine ezilandelayo zezinhlamvu zephethini, kodwa ukucaphuna izinhlamvu ngaphakathi kwe-braces kunomphumela.

Susa i-Smallest Suffix Pattern. Igama liyanwetshwa ukuze lenze iphethini. Ukwandiswa kwepharamitha kuyomphumela kupharamitha, nengxenye encane yesibambano esifanelwe iphethini isusiwe.

Susa isiphetho esikhulu kunazo zonke. Igama liyanwetshwa ukuze lenze iphethini. Ukukhuliswa kwepharamitha kuyomphumela kupharamitha, nengxenye enkulu yesixhumi esifanelwe iphethini isusiwe.

Susa i-Smallest Prefix Pattern. Igama liyanwetshwa ukuze lenze iphethini. Ukwandiswa kwepharamitha kuyomphumela kupharamitha, nengxenye encane yesibalo esilandelayo iphethini isusiwe.

Susa Okukhulu Kwedlula Isiphequluli. Igama liyanwetshwa ukuze lenze iphethini. Ukwandiswa kwepharamitha kuyomphumela kupharamitha, nengxenye enkulu yesiqephu esilandelayo iphethini isusiwe.

Yenza ukushintshwa

Ukumisa indawo kuvumela ukukhishwa komyalo ukuba kufakwe esikhundleni esikhundleni segama lomyalo ngokwawo. Ukumisa indawo kwenzeka lapho umyalelo ufakwa kanje:

$ (umyalo)

noma i-Po `` backquoted '' version Pc:

`umyalo`

Igobolondo idlulisela ukufaka esikhundleni somyalo ngokufaka umyalo endaweni engaphansi kwesimanje bese kufaka esikhundleni somyalo esikhundleni somphumela ojwayelekile womyalo, ukususa ukulandelana kweyodwa noma ngaphezulu s ekupheleni kokufaka esikhundleni. (Okushicilelwe s ngaphambi kokuphela kokukhipha akukasuswanga; noma kunjalo, ngesikhathi sokuhlukaniswa kwensimu, kungahunyushwa ku- s, kuye ngokuthi inani le- IFS nokucaphuna okusebenzayo.)

Ukwandiswa kwe-Arithmetic

Ukwandiswa kwe-Arithmetic inikeza indlela yokuhlola inkulumo ye-arithmetic futhi ingene esikhundleni sayo. Ifomethi yokukhuliswa kwe-arithmetic kanje:

$ ((inkulumo)

Le nkulumo iphathwe njengokungathi ibe ngama-quotes aphindwe kabili, ngaphandle kokuthi ukucaphuna okuphindwe kabili ngaphakathi kwezwi akuphathwa ngokukhethekile. Igobolondo yandisa wonke amathokheni enkulumweni yokukhuliswa kwepharamitha, ukufaka esikhundleni sokufaka esikhundleni, nokususwa kokucaphuna.

Okulandelayo, igobolondo ithatha lokhu njengamazwi ase-arithmetic futhi ishintsha inani lenkulumo.

I-White Space Splitting (I-Field Splitting)

Ngemuva kokunwetshwa kwepharamitha, umyalo wokufaka esikhundleni, nokukhuliswa kwe-arithmetic igobolondo ihlola imiphumela yokuhlaziya kanye nezakhiwo ezingezange zenzeke emaqenjini amabili okuhlukaniswa kwensimu futhi amasimu amaningi angabangela.

Igobolondo ithinta umlingiswa ngamunye we- IFS njengendlela yokunqamula imfucuza futhi isebenzise abadilizi behlukanisa imiphumela yokukhulisa i-parameter nokufaka esikhundleni sokungena ezindaweni.

Ukwandiswa Kwendama (Igama Legama Lamafayela)

Ngaphandle kokuthi ifulege le - f lihlelwe, isizukulwane segama lefayela senziwa ngemuva kokuhlukaniswa kwegama kuqedile. Igama ngalinye libhekwa njengezichungechunge zamaphethini, ahlukaniswe ngamanqamu. Inqubo yokwandisa ithatha igama esikhundleni samagama azo zonke amafayela akhona angamagama angakhiwa ngokufaka esikhundleni sephethini ngalinye ngethambo efana nephethini ecacisiwe. Kunemikhawulo emibili kulokhu: okokuqala, iphethini ayikwazi ukufanisa uchungechunge olune-slash, futhi okwesibili, iphethini ayikwazi ukufanisa uchungechunge oluqala ngenkathi ngaphandle kokuthi umlingisi wokuqala wephethini yisikhathi. Isigaba esilandelayo sichaza amaphethini asetshenziselwa ukwandiswa kwegama lombili kanye nomyalo (1).

Ama-Shell Patterns

Iphethini inezinhlamvu ezivamile, ezizifanisa nazo, nezinhlamvu zameta. Ama-meta-characters athi ``! '' `` * '' ``? '' Futhi `` ['' Lezi zinhlamvu zilahlekelwa izincazelo zabo ezikhethekile uma zicashunwe. Uma umyalo noma ukuguqulwa okuguquguqukayo kwenziwa futhi isibonakaliso se-dollar noma izingcaphuno zangemuva akucatshangwe kabili, inani lokuguquguquka noma ukukhishwa komyalo kuthathwa ngokubheka lezi zinhlamvu futhi ziphendulelwa zibe yizinhlamvu zemeta.

I-asterisk (`` * '') ifanisa noma iyiphi inhlamvu yezinhlamvu. Umbuzo wembuzo ufanisa noma yiliphi uhlamvu olulodwa. Ibakaki langakwesokunxele (`` ['') lifaka isigaba somlingiswa. Ukuphela kwesigaba somlingiswa kuboniswa ngu- (``] '') uma i- ``] '' ilahlekile ke `` ['' kufanelana `` ['' kunokufaka isigaba somlingiswa. Isigaba somlingiswa sifana nanoma yiziphi izinhlamvu phakathi kwabakaki abesikwele. Uhlu lwezinhlamvu lungacaciswa ngokusebenzisa isignali encane. Isigaba somlingiswa singase siqinisekiswe ngokwenza iphuzu lokumemeza umlingisi wokuqala weklasi lomlingiswa.

Ukuze ufake `` `] '' eklasini lomlingisi, yenze kube ngumlingiswa wokuqala obala (ngemuva kokuthi` `! '' Uma kukhona). Ukufaka uphawu lwesibonakaliso, yenze kube ngumlingiswa wokuqala noma wokugcina odweliswe

Builtins

Lesi sigaba sibhala imiyalo eyakhiwe eyakhiwe ngoba idinga ukwenza umsebenzi othile ongenakwenziwa ngenqubo ehlukile. Ngaphezu kwalokhu, kuneminye imiyalo eminingana engase ibekwe ekwenzeni kahle (isib. I- echo 1).

:

Umyalo we-null obuyisela inani lokuphuma eliyi-0 (eqinisweni) lokuphuma.

. ifayela

Imilayezo efayeleni ecacisiwe ifundwa futhi ikwenziwa yigobolondo.

i-alias [ igama [ = string ... ]]

Uma igama = string lichaziwe, igobolondo ichaza igama le-alias nge- string string Uma igama nje licacisiwe, inani legama elifanayo liphrintiwe. Ngezingxabano, i- alias eyakhelwe iguqula amagama namagugu azo zonke izinhlawulo ezichazwe (bheka ama- alias)

bg [ umsebenzi] ...

Qhubeka nemisebenzi ecacisiwe (noma umsebenzi wamanje uma kungekho imisebenzi enikeziwe) ngemuva.

umyalo womyalo we-oda ...

Yenza umyalo ocacisiwe owakhiwe. (Lokhu kuyasiza uma unomsebenzi wegobolondo negama elifanayo njengomyalo owakhiwe.)

cd [ isiqondisi ]

Shintshela kumkhombandlela ocacisiwe (okuzenzakalelayo $ HOME) Uma ukungena kwe- CDPATH kubonakala kwimvelo yomyalo we- cd noma i-shell ye-variable CDPATH isethwe futhi igama lomqondisi aliqali nge-slash, khona-ke izinkomba ezibalulwe ku- CDPATH zizoseshwa for the lwemibhalo ecacisiwe. Ifomethi yeCDPATH ifana neleyo ye- PATH Kwigobolondo elihlangene , umyalo we- cd uzophrinta igama lomshuwalense ukuthi lushintshe ngempela uma lokhu kuhluke egameni lomsebenzisi anike lona. Lezi zingase zihluke noma ngabe indlela ye- CDPATH isetshenzisiwe noma ngoba ukuxhumanisa okungokomfanekiso kwadlulile .

string string ...

Qondanisa zonke izimpikiswano ngezikhala. Bese uphinde uphinde usebenzise umyalo.

exec [ command arg ... ]

Ngaphandle kokuthi umyalo ususiwe, inqubo yegobolondo ishintshwe ohlelweni olucacisiwe (okumele lube uhlelo lwangempela, hhayi igobolondo eyakhiwe noma umsebenzi). Noma yikuphi ukulungiswa komyalo wokukhishwa kubhalwe njengomphela, ukuze kungabikho phansi uma umyalo wokuphela uphela.

phuma [ exitstatus ]

Qedela inqubo yegobolondo. Uma i- exitstatus inikezwa yona isetshenziswa njengesimo sokuphuma segobolondo; kungenjalo isimo sokuphuma somyalo esandulele sisetshenziswa.

igama lokuthekelisa ...

ukuthekelisa -p

Amagama achaziwe ayathunyelwa ukuze azovela emvelweni wemilayezo elandelayo. Indlela kuphela yokukhipha-ukuthumela okuguquguqukayo ukuyikhipha. Igobolondo ivumela inani lokuguquguquka ukuthi lihlelwe ngesikhathi esifanayo lithunyelwa ngokubhala

igama lokuthekelisa = inani

Ngezingxabano umyalo wokuthekelisa ubhala amagama azo zonke iziguquli ezithunyelwa ngaphandle. Ngenketho ye- p ecacisiwe ukuthi okukhiphayo kuzomiswa ngendlela efanele ngokusetshenziswa okungaxhunyiwe.

fc [- e editor ] [ owokuqala [ wokugcina ]

fc -l [- nr ] [ owokuqala [ wokugcina ]

fc -s [ omdala = omusha ] [ wokuqala ]

Izinhlu ze- fc eyakhiwe, noma ihlela futhi iphinde iphinde isebenze, imiyalo ngaphambilini efakwe kwigobolondo elihlangene.

-Umhleli

Sebenzisa umhleli obizwa ngokuthi umhleli ukuhlela imiyalo. Umhleli wocingo igama lomyalo, ngokucwaninga ukusesha nge- PATH eguqukayo. Inani eliguquguqukayo le- FCEDIT lisetshenziselwa ukuzenzakalela uma - e lingacacisiwe . Uma i- FCEDIT ingenalutho noma ingasethiwe, inani le-variable engu- EDITOR lisetshenzisiwe. Uma i- EDITOR ingenasici noma ingasethiwe, i-ed (1) isetshenziswe njengomhleli.

-l (ell)

Bhala uhlu lwemithetho kunokuba ucele umhleli kuwo. Imiyalo ibhalwa ngokulandelana okukhonjiswe yizinkampani zokuqala nezokugcina, njengoba zithinteka - r ngomyalo ngamunye ngaphambi kwenombolo yomyalo.

-n

Cindezela izinombolo zomyalo uma uhlonza -l.

-r

Phinda ulandele imiyalelo yemilayezo ebhalwe (nge - l noma ehleliwe (engekho - l noma ayikho )

-s

Phinda usebenzise umyalo ngaphandle kokufaka umhleli.

okokuqala

okokugcina

Khetha imiyalo yokuhlela noma ukuhlela. Inombolo yemilayezo yangaphambilini engafinyeleleka inqunywa inani lenani le- HISTSIZE . Inani lokuqala noma lokugcina noma kokubili kungenye yalezi ezilandelayo:

[+] inombolo

Inombolo enhle emele inombolo yomyalo; Izinombolo zomyalo zingaboniswa nge- l option.

-inani

Inombolo ephezulu yedesimali emele umyalo owenziwe inani lemiyalo ngaphambilini. Isibonelo, -1 yimilayezo yangaphambili esedlule.

string

Uthinta olubonisa umyalo osanda kufakwa oqala ngalolo chungechunge. Uma i-operand entsha = entsha ingacacisiwe futhi - ifomu lezintambo ze-operand yokuqala ayikwazi ukufaka uphawu olulinganayo olufakiwe.

Ukuhlukahluka kwemvelo elandelayo kuthinta ukwenziwa kwe-fc:

FCEDIT

Igama lomhleli ongayisebenzisa.

HISTSIZE

Inombolo yemiyalo yangaphambilini etholakalayo.

fg [ umsebenzi ]

Hambisa umsebenzi ocacisiwe noma umsebenzi wamanje ngaphambili.

Thola ama-optstring var

I- POSIX getopts iyala, hhayi ukuba ididaniswe ne- Bell Labs- ukutholakala kokuthola (1).

Ukuphikisana kokuqala kufanele kube uchungechunge lwezinhlamvu, okunye okungahle kulandelwe yi-colon ukukhombisa ukuthi inketho idinga ingxabano. Okuguquguqukayo okucacisiwe kusethwe kukho okukhethiwe.

Umyalo we- getopts unqanda ukutholakala kokudala (1) kokusebenza ngenxa yokusingatha kwezingxabano eziqukethe indawo ye-whitespace.

I- getopts builtin ingasetshenziselwa ukuthola izinketho kanye nezimpikiswano zazo ohlwini lwama-parameters. Uma kuphakanyisiwe, i- getopts ibonisa inani lenketho elandelayo kusuka kuzinketho zezinketho ohlwini olwenziwe ku-variable yegobolondo echazwe ngu- var futhi inkomba ku-variable yegobolondo OPTIND Uma igobolondo isetshenzisiwe, i- OPTIND iqalelwa ku-1. Ngenketho ngayinye edinga ingxabano, i- getopts builtin izoyibeka ku-variable yegobolondo OPTARG Uma okukhethwa kukho akuvumelekile ku- optstring bese i- OPTARG izosuswa.

ukukhetha i-string yezinhlamvu ezikhethiwe . Uma incwadi ilandelwa ikoloni, ukhetho kulindeleke ukuba kube nengxabano okungenzeka noma engahlukanisi nayo ngesikhala esimhlophe. Uma umlingiswa wokukhetha ungatholakali lapho okulindeleke khona, ama- getopts azosetha i-vari variable var kuya ``? '' Getopts izobe isusa i-OPTARG bese ibhala okukhiphayo kumaphutha ajwayelekile. Ngokucacisa ikholoni njengoba umlingisi wokuqala wokukhetha zonke amaphutha kuzobekwa indiva.

Inani le-nonzero libuyiselwa lapho ukhetho lokugcina lufinyelelwa. Uma kungekho zimpikiswano ezisele, i- getopts izobe ikhethe ukhetho olukhethekile, `` - '' ngaphandle kwalokho, lizobeka u-``? ''

Le fragment yekhodi elandelayo ibonisa indlela umuntu angase asebenze ngayo izimpikiswano zomyalo ongathatha izinketho [a] no [b] kanye nokukhetha [c] okudinga ukuphikisana.

ngenkathi i-getopts abc: f
yenza
icala $ $ in
a | b) ifulege = $ f ;;
c) i-carg = i-$ OPTARG ;;
\?) bhalisa u-USAGE US $; phuma 1 ;;
esac
kwenziwe
shintsha `expr $ OPTIND - 1`

Le khodi izokwamukela noma yikuphi okulandelayo njengokulingana:

ifayela lefayela le-cmd-i-acarg
ifayela lefayela le-cmd -a-c arg
cmd -carg-ifayela lefayela
cmd -a -carg - ifayela lefayela

umyalo we- hash -rv ...

Igobolondo igcina itafula le-hash elikhumbula izindawo zemiyalo. Ngaphandle kokuphikisana, umyalo we- hash uprinte okuqukethwe kwale tafula. Ukungena okungazange kubhekwe kusukela umyalo wokugcina we- cd kumakwe nge-asterisk; kungenzeka ukuthi lezi zifakiwe zingavumelekile.

Ngama-arguments, umyalo we- hash ususa imiyalo ecacisiwe kusuka kuthebula le-hash (ngaphandle uma liyimisebenzi) bese libabeka. Ngenketho ye- v , i-hash ifaka izindawo zemiyalo njengoba ithola. Okukhethwa kukho kudala umyalo we-hash ukususa konke okufakiwe kuthebula le-hash ngaphandle kwemisebenzi.

umsebenzi [ umsebenzi ]

Phrinta inqubo ye-id yezinqubo emsebenzini. Uma ngabe impikiswano yomsebenzi ishiyiwe, umsebenzi wamanje usetshenzisiwe.

imisebenzi

Lo myalelo ubala zonke izinqubo zangemuva ezingabantwana zenkambiso yegobolondo yamanje.

i-pwd

Phrinta isiqondisi samanje. Umyalo owakhiwe ungase uhluke ohlelweni lwegama elifanayo ngoba umyalo owakhiwe ukhumbula ukuthi yimuphi umthombo wamanje kunokuba awubuyisele njalo. Lokhu kwenza kube ngokushesha. Kodwa-ke, uma isiqondisi samanje sisho kabusha, inguqulo eyakhiwe ye- pwd izoqhubeka ukuphrinta igama elidala lencwadi.

funda [- p prompt ] [- r ] okuguquguqukayo ...

Iphrinta iphrintiwe uma inketho ye- p icacisiwe futhi ukufaka okujwayelekile kuyisiphetho. Khona-ke umugqa ufundwa kusuka kokufaka okujwayelekile. I-lineline esilandelayo isusiwe kusukela emgqeni futhi umugqa uhlukaniswe njengoba kuchazwe esigabeni sokuhlukaniswa kwegama ngenhla, futhi izingcezu zinikezwa eziguquguqukayo ngokulandelana. Okungenani okuguquguqukayo okunye kumele kuvezwe. Uma kunezingcezu ezingaphezu kweziguquguquko, izingcezu ezisele (kanye nezinhlamvu ku- IFS ezazihlukanisa) zinikezwe ukuguquguquka kokugcina. Uma kunezinguquko eziningi kunezingcezu, izinguquko ezisele zinikezwa izintambo ezingenalutho. I-readed builtin izobonisa impumelelo ngaphandle kokuthi i-EOF ihlangabezane nokufakwayo, lapho kwenzeka ukwehluleka kubuyiselwa.

Ngokuzenzakalelayo, ngaphandle kokuthi ukhetho lubekiwe, ukubuyiselwa emuva emuva `` \ '' kwenza njengobuntu bokuphunyuka, okwenza umlingisi olandelayo uphathwe ngendlela efanele. Uma ukuhlehla emuva kulandelwa i-newline, ukuhlehliswa kabusha kanye ne-newline kuzosuswa.

igama le- readonly ...

readonly -p

Amagama achaziwe amakwe njengokufundwa kuphela, ukuze akwazi ukuguqulwa noma ukusetha kabusha. Igobolondo ivumela inani lokuguquguquka ukuthi lihlelwe ngesikhathi esifanayo limakwe ngokufundwa kuphela ngokubhala

igama le-readonly = inani

Ngezingxabano umyalo we-readonly uhlunga amagama abo bonke ukufunda okuguquguqukayo kuphela. Ngenketho ye- p ecacisiwe ukuthi okukhiphayo kuzomiswa ngendlela efanele ngokusetshenziswa okungaxhunyiwe.

setha [{- izinketho | + izinketho | - gx ... ]

Umyalo ohleliwe wenza imisebenzi emithathu ehlukene.

Ngezingxabano, libala amanani azo zonke iziguquko zegobolondo.

Uma izinketho zinikezwa, zibeka ama-flags okukhethwa kukho okukhethiwe, noma ziwacosha njengoba kuchazwe esigabeni esibizwa ngokuthi iSx Argument List Processing.

Ukusetshenziswa kwesithathu komyalo wokusetha ukusetha amanani emigomo yemibono yegobolondo ku-args ecacisiwe. Ukuze ushintshe imingcele yezimo ngaphandle kokushintsha noma yikuphi okukhethwa kukho, sebenzisa `` - '' njengengxabano yokuqala yokusetha. Uma kungekho-args ekhona, umyalo wokusetha uzosula yonke imingcele ye-positional (efana nokwenza `` shiya $ #. ''

inani eliguquguqukayo

Inika inani lokuhluka. (Ngokuvamile kungcono ukubhala okuguquguqukayo = inani kunokusebenzisa i- setvar setvar kuhloswe ukuba isetshenziswe emisebenzini enikeza amanani kumashintsha amagama abo adluliselwa njengemingcele.)

shift [ n ]

Shift imingcele yezikhathi n izikhathi. I- shift isetha inani le- $ 1 ngenani lika- $ 2 inani le- $ 2 ngenani le- $ 3 njalo njalo, ukunciphisa inani le- $ # ngenye. Uma n ingaphezu kwenani lemingcele yemibandela, ukushintshwa kuzokhipha umlayezo wephutha, bese uphuma ngesimo sokubuyisa 2.

izikhathi

Phrinta izikhathi zomsebenzisi nezisistimu eziqoqiwe zegobolondo kanye nezinqubo ezigijima kusukela kugobolondo. Isimo sokubuyisa singu-0.

isignali yesenzo sogibe ...

Yenza ukuthi igobolondo lihlangane futhi lenze isenzo uma kunoma yiziphi izimpawu ezicacisiwe ezitholiwe. Izimpawu zichazwe ngenombolo yesignali. Uma isignali ngu- 0 isenzo senziwa uma igobolondo iphuma. isenzo singase singabi nhlobo noma `` - '' okwangaphambili kubangela ukuthi isignali ecacisiwe ingayinakwa futhi okulandelayo kubangela ukuthi isenzo esizenzakalelayo sithathwe. Uma igobolondo ifuna isisombululo, iphinda ivuselele izibophezelo ezingabanjwanga (kodwa ezinganaki) kwisenzo esizenzakalelayo. Umyalo wesicupho awunamthelela kumpawu ezibekwe phansi ekungeneni kugobolondo.

thayipha [ igama ... ]

Chaza igama ngalinye njengomyalo futhi uprinte isinqumo somsesho womyalo. Izinqumo ezinokwenzeka zingukuthi: igama elingukhiye eligobolondo, i- shell , i- shell shell , umyalo, i-alias elandelwe futhi ayitholakali. Ngokwenyuka ukunyuswa kwe-alias kuyanyatheliswa; imiyalo kanye nama-aliases okulandelwayo igama eliphelele lomyalo liphrintiwe.

i-humit [- H -S ] [- a-tfdscmlpn [ inani ]]

Cela noma usethe imingcele elukhuni noma elula emisebenzini noma usethe imingcele emisha. Ukuzikhethela phakathi komkhawulo onzima (okungekho inqubo evunyelwe ukwephula, futhi okungenakuphakanyiswa uma kuncishisiwe) nomkhawulo ophansi (okubangela ukuthi izinqubo zisetshenziswe kepha azibulali, futhi okungase kuphakanyiswe) zenziwa la mafulege:

-H

setha noma ubuze ngemingcele eqinile

-S

usethe noma ubuze ngemingcele elula. Uma kungenjalo - H no- S kungacacisiwe, umkhawulo ophansi ukhonjiswa noma kokubili imingcele isethwe. Uma kokubili kucacisiwe, owokugcina uyanqoba.

Umkhawulo wokucutshungulwa noma ukusetha, ke, ukhethwa ngokucacisa noma yikuphi kulawa maphuphagi:

-a

bonisa yonke imingcele yamanje

-t

bonisa noma usethe umkhawulo ngesikhathi se- CPU (ngemizuzwana)

-f

bonisa noma usethe umkhawulo efayeleni elikhulu kunazo zonke ezingadalwa (ku-512-byte blocks)

-d

bonisa noma usethe umkhawulo kusayizi wenxenye yedatha yenqubo (ngama-kilobytes)

-s

bonisa noma usethe umkhawulo ngobukhulu besitoreji senqubo (kuma-kilobytes)

-c

bonisa noma usethe umkhawulo esakhiweni esikhulu esikhulu sokususa esingasikhiqizwa (ngamabhuloki angu-512-byte)

-m

bonisa noma usethe umkhawulo ememori engokwenyama engasetshenziswa yinqubo (ngama-kilobytes)

-l

bonisa noma usethe umkhawulo wokuthi inkumbulo engakanani inqubo ingavala nge- mlock (2) (ngama- kilobytes )

-p

bonisa noma usethe umkhawulo ngenani lezinqubo le msebenzisi angaba nayo ngesikhathi esisodwa

-n

bonisa noma usethe umkhawulo kumafayili wenombolo inqubo ingavuleka ngesikhathi esisodwa

Uma kungekho okunye kwalokhu okucacisiwe, kungumkhawulo wesayizi wefayela eliboniswayo noma elibekiwe. Uma inani licacisiwe, umkhawulo usethelwe kuleyo nombolo; kungenjalo umkhawulo wamanje uboniswa.

Imikhawulo yenqubo ehlukumezayo ingaboniswa noma isethwe ngokusebenzisa isevisi ye-sysctl (8).

umask [ mask ]

Setha inani le-umask (bona umask (2)) kunani elibekiwe le-octal. Uma ingxabano ishiyiwe, inani le-umask liphrintiwe.

ulias [- a ] [ igama ]

Uma igama licacisiwe, igobolondo isusa lezo zici. Uma- a ecacisiwe, zonke izivumelwano zikhishwa.

igama elingalungile ...

Izinguquko ezicacisiwe nemisebenzi ayisethiwe futhi ayixhunywanga. Uma igama elinikeziwe lihambisana kokubili okuguquguqukayo nomsebenzi, kokubili okuguquguqukayo kanye nomsebenzi akusethiwe.

linda [ umsebenzi ]

Lindela umsebenzi ocacisiwe ukuqedela bese ubuyisa isimo sokuphuma senqubo yokugcina emsebenzini. Uma ukuphikisana kungavaliwe, linda yonke imisebenzi ukuqedela futhi ubuyekeze isimo sokuphuma sero.

Lawula Ukuhlela Amanethiwekhi

Uma i- sh isetshenziselwa ngokuhlanganyela phakathi kokugcina, umyalo wamanje nomlando womyalo (bheka i- fc ku-Sx Builtins) ingahle uhlelwe usebenzisa ukuhlelwa kwe-vi-mode yokulayisha umugqa. Lemodi isebenzisa imiyalo, echazwe ngezansi, efana ne-subset yalezo ezichazwe ekhasini le-vi. Umyalo othi 'setha' -o uvumela i-vi-mode ukuhlelwa bese ufaka phakathi kwemodi yokufaka. Njengoba i-vi-mode inikwe amandla, sh ingashintsha phakathi kokufaka imodi nemodi yeyalo. Umhleli akachazwe ngokugcwele lapha, kodwa uzobe edokhumenti kamuva. Kufana ne-vi: ukuthayipha i-Aq ESC kuzokuphonsa esimweni somyalo we-VI. Ukushaya i-Aq ukubuyela ngenkathi kumodi yokulawula kuyodlula umugqa kuya kwigobolondo.

Okubalulekile: Sebenzisa umyalo womuntu ( % umuntu ) ukuze ubone ukuthi umyalo usetshenziswe kanjani kukhompyutha yakho ethile.