Ithiyori kaBash

/ ibin / ibash

0. Isalathiso

  1. Izinto ezenzeka kubantu abaninzi
  2. Ulwakhiwo lweskripthi
  3. Phrinta kwiscreen
  4. Funda INPUT yomsebenzisi
  5. Ukubala kwi-bash
  6. Iimeko
  7. IiLuphu
  8. Imisebenzi
  9. Ukufumana

1. Izinto ezenzeka kubantu abaninzi

/ bin / bash okanye / bin / sh

Enye yezinto zokuqala ezenziwa ngumatshini xa kusenziwa iskripthi sethu ujonge ukuba yeyiphi iqokobhe ekufuneka eyenzile nayo. Kwiinkqubo ezininzi zangoku ze-linux / bin / sh Ikhonkco kwi / ibin / ibash, kodwa oku akusoloko kunjalo, umzekelo kunikezelo olusebenzisayo ibhokisi exakekileyo zisa Sh kwaye ngesiqhelo nazo ziyazisa Bash, kodwa ukuba usebenzisa / bin / sh, ayizukuqhuba noBash. Kungenxa yoko le nto ndincoma uhlala usebenzisa / ibin / ibash.

I-Unicode vs ASCII

Wakhe wazibuza ukuba kutheni ungasebenzisi "¿" okanye "ñ" kwizikripthi zakho? Okanye sebenzisa iiakhawunti? Inokucaphukisa kwizikripthi ezisebenzisanayo. Kungenxa yokuba ukufakwa kwikhowudi okungagqibekanga kweBhash yi-ASCII, okanye yintoni enye, iseti yomlinganiswa wesiNgesi. Ukuyitshintsha, kufuneka sixelele iskripthi sethu ukuba sifuna ukusebenzisa i-Unicode. Ngenxa yoko kuya kufuneka wongeze umgca emva nje kwetoliki yomyalelo:

# - * - UKUFAKWA KWENKQUBO: UTF-8 - * -

Lumka, kubalulekile ukuba lo mgca usekuqaleni kweskripthi.

Yenza iscript esisebenzisekayo

Kuyahlekisa ukuba bangaphi abantu abaqhuba izikripthi nge «$ bash Iskripthi.sh" ngaphandle kwe "$ ./script.shEmva kwayo yonke loo nto, yile nto sichaze iqokobhe layo.

Ukongeza iimvume zokwenza, kuya kufuneka wenze:

Isudo + x script.sh
Ukuba iskripthi sethu siyasebenza, singayongeza kwi-PATH yethu kwaye siyenze ukuba iphunyezwe naphi na / kwifolda kwikhompyuter yethu. Ngenxa yoko kufuneka sidibanise nokuba .bashrc yomsebenzisi wethu okanye / njl / bashrc umgca
BIN = "incwadi eneenkcukacha apho sineempendulo" PATH = "$ BIN $ PATH"
Ngumthetho kaBash ukubhala amagama aguqukayo kuwo onke amagama aphezulu. Abantu abaninzi abawuthobeli lo mthetho, kodwa kwizikripthi ezide ziyaxatyiswa kuba zibenza bafundeke ngakumbi

2. Ulwakhiwo lweskripthi

  1. Intloko
  2. Inkcazo yeenguqu zehlabathi
  3. Uncedo
  4. Imisebenzi
  5. Umzimba ophambili

I-header kulapho sibonisa khona ukuba leliphi iqokobhe esifuna ukulisebenzisa kunye nekhowudi. Uncedo lwemisebenzi kukuphinda usebenzise ikhowudi ephindaphindwe ngokuyibhala kube kanye kunye nokwenza kube lula ukuqonda iskripthi, kuba ikhowudi edlula imigca eli-100 iluncedo kakhulu.

Ukuze usebenzise imisebenzi, kufuneka zichazwe kunye nomzimba ophambili weskripthi sethu. Kwaye ukuba sifuna ukusebenzisa izinto eziguquguqukayo kwinqanaba lehlabathi lonke kwisikripthi sethu, kokubini emzimbeni ophambili nakwimisebenzi, kufuneka sizichaze ekuqaleni kwayo yonke into, emva kwentloko.

Okokugqibela, kuyinto elungileyo ukubhala umsebenzi womncedisi xa iskripthi sethu siqhuba kakubi okanye sineeparameter ezimbi. Ngokucacileyo, kwezo meko sifuna ukuphuma kwiskripthi kwangoko, ngaphandle kokufunda imisebenzi. Ukwenza oko sinokusebenzisa:

Umsebenzi woncedo () {echo "" "Umbhalo wethu woncedo owenziwe kakuhle." "" phuma ukuba [[-z $ 1 || $ 1 == "-h" || $ 1 == "--help"]]; ke uncede fi

Ukuba sidibanisa "ukuphuma" kumsebenzi woncedo, siya kuphuma kwiskripthi ngalo lonke ixesha sisebenzisa uncedo, umzekelo emva kwemiyalezo yempazamo, njl. Sigcina imigca embalwa yekhowudi.

Imeko ibonisa uncedo lokubonisa kwiscreen kwaye uphume ukuba iskripthi siqhutywa ngaphandle kweeparameter okanye ukuba -h / -help icacisiwe. Ukuba uyayijonga, leyo yindlela yokuziphatha esemgangathweni yeenkqubo ezininzi ze-linux.

Ukusetyenziswa kwezicatshulwa ezi-3 nge-echo kuvumela ukusebenzisa ikhefu lomgca ngaphandle kokushiya umyalezo oza kuboniswa yi-echo. Kwimiyalezo enemigca emininzi kulula ngakumbi ukusebenzisa i-echo kube kanye kuphela.

3. Printa kwiscreen

Kukho imiyalelo emi-2 ephambili yokuprinta kwiscreen kwi-bash: «Bhala"Y"ukuprinta«. Zombini ziyakhawuleza kwaye zombini ziyinxalenye ye-bash. Umahluko ophambili wabaqalayo kukuba i-echo yongeza umgca omtsha ekugqibeleni, ngelixa «ukuprinta"Ayi.

I-Echo ilungile kwaye yile nto abantu abaninzi abayisebenzisayo, nangona kunjalo xa ufunda i-INPUT yomsebenzisi, okanye xa ufuna ukuprinta izinto eziguquguqukayo ezithathwe kwiifayile ngokulungiswa kwamagama, izinto ezingaqhelekanga zinokwenzeka. Zihlala zisonjululwa ngokulula, ngokulula njengokutshintsha iikowuti eziphindwe kabini ziye kwenye okanye kungenjalo, okanye ukuthatha izingqinisiso eziguquguqukayo kwizicatshulwa. «Echo»Ngaba izinto ezingaqhelekanga zixhomekeke kwindlela eyaqulunqwa ngayo, ukuba sihlala sisebenzisa Ubuntu okanye iFedora, ayichaphazeli thina, kodwa ukuba sitshintsha ukuhanjiswa kuyenza.

Kungenxa yoko le nto ndisebenzisa «ukuprinta«, Engandinikiyo intloko kwaye iziphatha ngakumbi njenge«ukuprinta»Ukusuka C okanye i«ushicilelo»NgePython, oku kubaluleke kakhulu ukuba ufuna ukuhambisa iskripthi sakho kolunye ulwimi lwenkqubo.

Ukuze ufumane ingxoxo ebanzi ungandwendwela lo mbuzo uvela kwi-Unix nakwiLinux kwiStack Exchange.

4. Funda igalelo lomsebenzisi

Yonke into esiyibhalayo emva kwegama leskripthi sethu nangaphambi kokuba ndibethe ENTER isitshixo sigcinwa ngokuzenzekelayo kwiinguqu ezahlukeneyo. Ezi zinto zixabisekileyo ziluhlobo lwe-X apho i-X linani.

«$0»Ibonisa igama leskripthi sethu kwaye isuka«$1»Ukungapheliyo yonke into esiyibhalileyo kamva iyahluka. Umzekelo:

Ikati $ 8 \ n "EOF chmod + x script.sh ./script.sh yam ifayile.txt

Senza iskripthi sovavanyo, sikwenze ukuba sisebenze, kwaye siqhubeke ngeeparamitha ezi-2. Sifumana imveliso yesikrini:

$ 0 = ./script.sh $ 1 = yam $ 2 = ifayile.txt

Usebenzisa iikowuti besinokudlulisa "ifayile yam.txt" ukuya kwi "$ 1".

Singayifunda INPUT yomsebenzisi ngomyalelo "funda", ebonisa ngokuthe ngqo umahluko apho sifuna ukugcina ipharamitha. Umzekelo:

printf "Ngubani igama lakho? \ n" funda NAME printf "Molo, $ NAME. \ n"
Lumka ulwabiwo lwezinto eziguquguqukayo. "$ VAR = umxholo" uza kuvelisa impazamo, akukho zithuba zinokushiyeka phakathi kophawu olulinganayo, igama eliguqukayo nomxholo. Usetyenziso oluchanekileyo "VAR = umxholo"

5. Ukubala kwiBhash

Ngale nto sinokusebenzisa «vakalisa«, Logama nje singadingi ukwenza ubalo oluntsonkothileyo. Izinto ezimbini kufuneka ziqwalaselwe, eyokuqala kukuba «vakalisa»Kuvuma kuphela amanani apheleleyo, okwesibini kukuba ukwahlula kubuyisa iziphumo, ukubona ezinye esinokuzisebenzisa«%«.

Ngokwesiqhelo siya kufuna ukwabela iziphumo ze-expr kuguquguquko. Singakwenza oko ngeendlela ezimbini:

VAR2 = `expr $ VAR1 / 10` VAR2 = $ (expr $ VAR1 / 100)

Ungatsiba kwakhona «vakalisa»Usebenzisa umzali ophindwe kabini:

I-VAR2 = $ (($ VAR1 / 100))
Ukufumana enye inkcazo nge «vakalisa»Okanye enye indlela esebenzisa amanani apheleleyo, unokujonga le KZKG ^ gaara yokungena.

6 Iimeko

Sele ibhaliwe ngendlela ebanzi malunga «if«,«enye«,«Elif»Kunye neemeko. Unokufunda malunga nale:

Ndifuna ukuqaqambisa umahluko phakathi kokusetyenziswa kweebakaki ezilula zesikwere, «[]«, Kwaye iibakaki ezibini,«[[]]«, Ngeemeko. Ngeebakaki ezibini sinokusebenzisa iimeko ezongezelelweyo:

  • «&&»Kwaye kunye
  • «||»Ye okanye

Ukusebenzisa "&&"Y"||»Ngezibiyeli ezilula zesikwere, icandelo ngalinye kufuneka lahlulwe kubakaki abahlukeneyo. Umzekelo osetyenzisiweyo kwinxalenye yeskripthi ejonge ukubona ukuba ngaba uncedo ekufuneka lwenziwe luya kuba:

ukuba [-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "--help"]]; ke uncede fi

Ikwasigcina ekubeni sibhale amagama ahlukeneyo kwizicatshulwa ukukhusela iimpazamo. Umzekelo:

ukuba [$ 1 = 1]; emva koko printf "Ipharamitha ilingana no-1"; fi ukuba ["$ 1" = 1]; emva koko printf "Ipharamitha ilingana no-1"; fi ukuba [[$ 1 = 1]]; emva koko printf "Ipharamitha ilingana no-1"; fi

Ukuba iscript.sh siqhutywa ngaphandle kweeparameter, ityala lokuqala liya kunika impazamo:

bash: [: =: umsebenzisi ongalindelekanga ulindelwe
KwiBhash "=" kunye "==" Zombini zitolikwa ngendlela efanayo. Oku akwenzeki kwezinye iilwimi zenkqubo apho "=" isetyenziselwa kuphela ukunika izinto eziguquguqukayo.

Into engakhange ithethwe ngayo «icala«, Esetyenziselwa ukwenza lula«if«. Masiqale ekuqaleni, xa singenayo nayiphi na «if»Yonke ikhowudi iya kwenziwa. Ukuba sidibanisa imeko «if»Siza kuba namatyala amabini, elinye apho ibhloko yekhowudi engaphakathi kwe«if»Kwaye elinye icala apho le bhloko ingenziwa.

Ukuba sidibanisa i- «enye«Siya kuba namatyala amabini, kodwa la matyala mabini ahlukile kunangaphambili. Kuba ngoku kuyakubakho iibhloko ezimbini zekhowudi, A kunye no-B, kunye no-C ibhloko, eyenye inkqubo. Kuya kwenziwa u-A okanye u-B, kwaye u-C kwityala elidlulileyo ibingu-A no-C okanye u-C kuphela.

Ukuthintela iimeko zokubhala «ukuba / enye"ngaphakathi"enye»Kwaye ukwenza lula ukufundwa kwekhowudi, yenziwa«Elif«. Xa sineemeko ezininzi ezixhomekeke kwangaphambilini, umzekelo uluhlu lwamanani okanye uhlobo:

VAR1 = $ 1 ukuba [[$ VAR1 = 1]]; emva koko kuprintwe "1 \ n" elif [[$ VAR1 = 2]]; emva koko kuprintwe "2 \ n" elif [[$ VAR1 = 3]]; emva koko phrinta "3 \ n" enye into eprintiweyo "akukho n \ fi" fi

Kwimeko yokugqibela «Elif»Kuya kufundwa iimeko ezininzi. Kwimeko apho le nkqubo icwangcisiweyo:

VAR1 = $ 1 ityala $ VAR kwi 1) printf "1 \ n" ;; 2) ushicilelo "2 \ n" ;; 3 | 4) printf "3 okanye 4, ixhomekeke \ n" ;; *) printf "nanye \ n" ;; ukuba uC

Umahluko uya kufundwa, kule meko i-VAR1, kwaye iya kubonakala ukuba iyalingana nawaphi na amatyala, ukuba akunjalo, imeko engagqibekanga "*" iya kwenziwa. Iisemoloni eziphindwe kabini ziyalingana «aphule«, Baxelela«icala»Kufuneka iphele.

«ityala»Ingasetyenziswa njengolandelelwano lwe«if«, Ngenxa yokuba kuya kufuneka usebenzise« ;; & »(qhubeka) endaweni ye« ;; » (yeka).

7. Izihamba

Zimbalwa iiluphu ezaziwayo kulo naluphi na ulwimi lwenkqubo. KwiBhash ziyi «lo gama«,«kude"Y"kuba«. Sele ibhaliwe kwibhlog malunga nezi:

Zimbini iintlobo zeluphu «kuba«, Ezo ziluhlobo«$ yeVAR kwiLOQUESEA»Kwaye zithini uhlobo C«$ ((I = 0; I <= 10; Ndi ++))«. Uhlobo lwesibini lweziporo «kuba»Iluncedo kakhulu, inamalungu ama-3 ekuqaleni kweluphu:

  • Isibhengezo kunye nokuqaliswa kwezinto eziguquguqukayo (Kule meko ukungafani okuncedisayo "I = 0").
  • Imeko yokuphunyezwa (ndide ndibengaphantsi okanye ndilingane no-10).
  • Ukwanda kokungafani okuncedisayo

Ngokoluvo lwam yeyona loop inamandla kunazo zonke. Umzekelo, oprinta onke amanani ukusuka ku-0 ukuya ku-10, kubandakanya:

#! / bin / bash ye ((I = 0; I <= 10; Ndi ++)); phrinta "$ I \ n" kwenziwe

8. Imisebenzi

Kukho izinto uBash angasivumeli ukuba sizenze, akunjalo? Ekuboneni kuqala, imisebenzi ye-bash ikuthintela ekwenzeni izinto ezi-3: ukubhengeza izinto eziguquguqukayo zasekhaya kwimisebenzi, ukudlulisa iiparameter kwimisebenzi, kunye nokubuyisa iiparameter. Yonke into inesisombululo.

Sukwenza nto efana:

#! / bin / bash VAR = 1 printc "$ VAR \ n" umsebenzi molo () {VAR = 2 printf "$ VAR \ n"} hello printf "$ VAR \ n"

Oku kuprinta kwiscreen 1, 2 kunye 2.

Ukubhengeza izinto eziguquguqukayo zasekhaya, yongeza «basekuhlaleni»Xa usazisa:

#! / bin / bash VAR = 1 printf "$ VAR1 \ n" function foo () {local VAR1 = 2 printf "$ VAR1 \ n"} printf "$ VAR1 \ n" foo printf "$ VAR1 \ n"

Oku kuprinta 1, 1, 2, 1 kwiscreen.

Uyidlulisa njani iparameter emsebenzini?

#! / bin / bash # - * - UKUFAKWA KWENKQUBO: UTF-8 - * - umsebenzi molo () {printf "Molo $ 1 \ n"}

phrinta "Ngubani igama lakho? \ n"
funda VAR1
molo $ VAR1

Zibuyiselwa njani iiparameter?

#! / bin / bash # - * - ENCODING: UTF-8 - * - function hello () {printf "Hello holita"} printf "Ngubani igama lakho? \ n" funda iVAR1 VAR1 = $ (molo) # NANTSI ushicilelo "$ VAR1 $ VAR2 \ n"

Njengoko ubona, oku kuneengxaki ezimbini, ungabuyisa ipharamitha enye kuphela, enokuba yeyivenkile 😀, kwaye ukuba ufuna ukubuyisa ipharamitha, awusenakuphrinta kwiscreen kuloo msebenzi.

Ungafumana izinto ezininzi malunga nemisebenzi apha [url=https://blog.desdelinux.net/programando-en-bash-parte-3/]eli nqaku lisuka Usemoslinux[/url].

9. Iipops

Enye yezinto zokugqibela ofuna ukuzazi malunga neBash ukwenza izikripthi ezintsonkothileyo «ukufumana«. Isetyenziselwa ukudlulisa ukhetho kwiskripthi ngaphandle komyalelo. Icala elisezantsi kuphela kukuba ichaphazela kuphela iindlela ezimfutshane:

#! / bin / bash # - * - UKUFAKWA KWENKQUBO: UTF-8 - * - VARC = 0 umsebenzi woncedo () {printf "umyalezo woNcedo \ n" phuma} ukuba [[-z $ 1]]; emva koko uncede fi ngelixa ufumana: ha: b: c UKUKHETHA; yenza ityala $ OPT kwi h) uncedo ;; :) Nceda ;; a) VARA = $ OPTARG ;; b) VARB = $ OPTARG ;; c) VARC = 1 ;; \?) Nceda ;; esac yenziwe # Iibhloko eziphambili zeskripthi # esenza izinto ngeVARA, VARB kunye neVARC

«Ukufumana»Ufunda ukhetho ngalunye ngalunye, ke iluphu iyafuneka.

Zimbini iindlela onokukhetha kuzo ezinokuthi zidluliswe kusetyenziswa «ukufumana":

  • Iiparameter ezibizwa ngokuba ziiflegi, kule meko -c okanye -h. Kucacisiwe ngonobumba esifuna ukuwusebenzisa. Zifana nezinto eziguquguqukayo zeBoolean, «oyinyaniso»(Ngaba) okanye«amanga"(Abekho apha).
  • Iiparameter ezineempikiswano ezinxulumene noko, -a nantoni na, -b nantoni na. Bacacisiwe yileta siyifunayo ngekholoni engezantsi. Impikiswano igcinwe kwi-OPTARG (eli gama alitshintshi).
Amanqaku aphindwe kabini angabonisi mpazamo.

Wenza ntoni lo mbhalo?

Ibonisa umyalezo woncedo xa kungekho khetho oludlulisiweyo, xa iparameter "-h" ipasisiwe, xa kudlula iparameter engavumelekanga (umzekelo "-x", oku kwenziwa ngu "\?") Okanye xa Ipharamitha esebenzayo engenangxabano (":"). Kwezinye iimeko kugcinwa ubukho be "-c" njenge-1 kwi-VARC, kunye namaxabiso agqithiswe ngo "-a" no "-b" kwiVARA nakwiVARB.


Shiya uluvo lwakho

Idilesi yakho ye email aziyi kupapashwa. ezidingekayo ziphawulwe *

*

*

  1. Uxanduva lwedatha: UMiguel Ángel Gatón
  2. Injongo yedatha: Ulawulo lwe-SPAM, ulawulo lwezimvo.
  3. Umthetho: Imvume yakho
  4. Unxibelelwano lwedatha: Idatha ayizukuhanjiswa kubantu besithathu ngaphandle koxanduva lomthetho.
  5. Ukugcinwa kweenkcukacha
  6. Amalungelo: Ngalo naliphi na ixesha unganciphisa, uphinde uphinde ucime ulwazi lwakho.

  1.   iyeva sitsho

    NGOKUQHELEKILEYO. Anditsho ngaphezulu U_U

  2.   Miguel sitsho

    Molo inqaku elilunge kakhulu.
    Hei ubeka ukunika iimvume Sudo + x endaweni ye chmod + x

    1.    Henry sitsho

      $ sudo chmod + x script.sh
      (Ukuchaneka ngakumbi, hehe)

      Hayi, ndiyavuyisana kwaye ndiyabulela!

  3.   umlilo sitsho

    Iposti entle kakhulu, inyani ndiyakuvuyela, qhubeka njalo, ndiyabulisa

  4.   Gustavo sitsho

    Kwaye ukuba ufuna ukuba iskripthi sibonakale xa kusenziwa, inyathelo ngenyathelo, ukubona umzekelo indlela izinto eziguquguqukayo, iimeko nayo yonke into eziphatha ngayo, ungasebenzisa:

    sh -x isicatshulwa

    Phendula nge quote

  5.   Pha sitsho

    IXESHA lokufundiswa. Igqwesile kwaye ichazwe kakuhle.
    Enkosi kuwe.

  6.   UGabriel sitsho

    Isithuba esigqwesileyo kumxholo 😉

  7.   UMario Guillermo Zavala Silva sitsho

    Inomdla kakhulu kwaye ibalulekile, enkosi ngolwazi….
    MASINWABE !!!

  8.   Kwingubo sitsho

    Ndiyabulela kuni nonke ngokuvuyisana nani, ngokomyalelo kaMiguel, akandivumeli ukuba ndiguqule ungeniso lwakuba lupapashiwe. Kuya kufuneka yenze elav ndicinga.

  9.   Adrian sitsho

    Kulunge kakhulu!

    Okokuqala ndifuna ukuvuyisana nawe kwiposi, ndifumene kulula ukuyiqonda kwaye iyanceda ukulandela izikhokelo zenkqubo efanelekileyo e-bash, ngakumbi kubantu abaqala ukwenza inkqubo.

    Nangona kunjalo ndifumene iinkcukacha ezimbalwa endicinga ukuba kufuneka zilungiswe.

    Okokuqala: kwicandelo «2. UKWAKHIWA KWE-SCRIPT »umsebenzi awuvaliwe, oya kuthi ubangele iingxaki xa usenza kwiskripthi.
    Isisombululo iya kuba kukudibanisa isibiyeli sokuvala kanye emva komyalelo "wokuphuma".

    Okwesibini: kwicandelo «4. FUNDA IGALELO LOMSEBENZI ”uyangqina ukuba iiparameter umsebenzisi angazifaka kuluhlu ukusuka kwi-0 yeedola ukuya kwi-infinity, nangona kunjalo," bash "iya kutolika kuphela ukusuka kwi-0 ukuya kwi-9 yeedola, kuba iidola ezili-10 ziya kulingana ne-1 + 0.
    Ukusombulula le ngxaki, unokusebenzisa "ishifti" ukuyalela oku kulandelayo. Okanye chaza umahluko kubakaki "$ {10}", ukuze bash athathe amaxabiso ndawonye, ​​hayi njenge- $ 1 + 0.

    Ngaphandle kokuqhubeka, imibuliso!

    1.    Kwingubo sitsho

      Enkosi ngengcaciso yakho. Isilele ngokupheleleyo ukuchaza ukusetyenziswa ngokuchanekileyo kokuphuma, kokubini kwiskripthi nakwimisebenzi. Ngokubhekisele kwi $ {10} khange ndikwazi ukwenza kangako, ke andikhange ndileqe ukungena kule ngxaki, kulungile ukwazi ukuba sikhona isisombululo soko (sele ndiyigqibile into entsha endiyifundileyo namhlanje) .

  10.   chanio sitsho

    Enkosi kakhulu ngenqaku! Ezinye izinto ozikhankanyileyo zisaswele ingcaciso. Umzekelo, getops.
    Kwinxalenye yesiphumo sescreen, kuye kwafuneka uchaze ikati oza kuthi kamva uyikhankanye ...
    ikati <
    ***………………………………………………………………………………………………
    * LE FOMU ICHAZA KAKHULU *
    ***………………………………………………………………………………………………
    EOF

    Kumzekelo wakho:
    ikati << EOF >> test.sh
    Zimbini izinto onokuzikhankanya ... >> 'yongeza' oko kukuthi, ukuba uphinda-phinda umyalelo omnye, uya kuba nawo wonke umbhalo ophindwe kabini ... Kuya kufuneka usebenzise enye ...
    ikati << EOF> script.sh
    Ewe kufanelekile ukubizwa ngokuba yi-script.sh
    Emva koko ungene
    ukuba [-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "- uncedo"]]; emva koko
    Nceda
    fi

    Ndicinga ukuba kufuneka ibhaliwe ...
    ukuba [[-z "$ 1"] || ["$ 1" == "-h"] || ["$ 1" == "- uncedo"]]; emva koko
    ...

    Kuninzi okunokukufumanisa kwi-BASH.
    Ngaba ungayichaza njenge "BASICS"? 🙂
    Umzekelo, 'abavavanyi' beparameter njenge -z ukubona ukuba ayinanto, okanye -f ukwazi ukuba ikhona njengefayile.

    Kwakhona, enkosi ngomzamo wakho.
    alberto

  11.   iklasi_eriol sitsho

    Isifundo esisesona silungileyo kakhulu!

  12.   ocz sitsho

    -UKUFAKWA KWENKQUBO: UTF-8 --

    Kokokuqala ukuba ndibone loo mgca ukuseta ukufakwa kweekhowudi kwiskripthi se-bash. Kubonakala kum ngathi iPython kuneBash. Ngaba iyimfuneko ngokwenene? Ndikhangele ireferensi kuGoogle kodwa andifumani nto, ingaba unayo ikhonkco esandleni elithetha ngalo mbandela? Ngokukodwa ukufaneleka kwalo mgca.

    Ngokoluvo lwam, ukubhala izikripthi eBhash usebenzisa i-UTF-8, kuya kufuneka ugcine ifayile yokubhaliweyo enjalo (ngaphandle kwe-BOM) kwaye ube nezinto ezithile zemo engqongileyo, (LANG kunye ne-LC_ *), ebekwe ngokuchanekileyo.
    Ke, ngokucacileyo, kuyimfuneko ukuba imiyalelo ephunyeziweyo ilungiselelwe iikhowudi ngaphandle kwe-ASCII. Umzekelo, ukuba sifuna ukuya koonobumba abakhulu, oku kubonakala ngathi akusebenzi:
    «Nditsho áéíóú | az AZ »
    o:
    «Nditsho áéíóú | tr [: ezantsi:] [: phezulu:] »
    kwaye kungcono ukusebenzisa:
    «Nditsho áéíóú | awk '{shicilela isixhobo ($ 0)}' ».

    1.    Kwingubo sitsho

      Malunga «khowudi»Sele kukhankanyiwe kule bhlogi ngaphambili:

      I-Bash: uyenza njani into ebhaliweyo
      Iskripthi sokusetyenziswa kwesithuba

    2.    borriquito njengawe sitsho

      Umntu othile uyandilungisa, kodwa loo mgca wokufaka iikhowudi (# -UKUFAKWA KWENKQUBO: UTF-8 --) Ayinanto yakwenza nebash okanye iqokobhe: ngumgca wokubeka izimvo (uqala nge #) kwaye ukhonza ukuxelela UMHLELI ukuba sisebenzisa ukubhala iskripthi (vim, emacs ...) ukufakwa kwefayile.

      Ngapha koko, u-bash akaboni umgca onjalo, kuba ngumgca wokuphawula.

  13.   IJoRgE-1987 sitsho

    Ukufundisa okugqwesileyo, njengoko iSysadmin isazi ukuba ukubhala kwiBhash kubalulekile, iluncedo kuyo yonke into.

    Kulunge kakhulu!

    Nibuliso!

  14.   UEduardo Cuomo sitsho

    Kwimeko apho iluncedo kuye nawuphina umntu, nantsi imisebenzi emininzi kunye nemizekelo yokwenza iZibhalo zakho: https://github.com/reduardo7/hsabx

  15.   Lito Mnyama sitsho

    Kulunge kakhulu. Izinto ezintsha zokongeza kwizikripthi zam. Into encodig kunye neprintaf ayinayo.
    Enkosi!!!

  16.   bakaxe sitsho

    Inqaku elilungileyo leSoooo! Ndiyigcina le yezintandokazi, kuya kuba kuhle ukuyilungisa into engalunganga kwaye ndiyandise nangomxholo ongaphezulu. Kujikelezwe ihlombe kuyo yonke le ngcaciso !!!!