Tari-dàlana hanombohana mankany BASH - Input Parameters

Tongasoa eto amin'ny ampahany faharoa amin'ny Torolàlana ho an'ny Guide for BASH izay tsy manam-paharoa fa io no hany fampianarana BASH nosoratan'ny mpandidy ho an'ny mpandray anjara.

Ireo mpamaky an'ity toro-lalana ity dia hanatsara ny fahalalany rehefa manatsara ny fahalalako aho ary manantena fa amin'ny fiafaran'izany rehetra izany dia afaka manoratra sora-tanana sasantsasany sasantsasany izahay.

Ny herinandro lasa teo dia raketiko ny famoronana ny scripto voalohany izay nampiseho ny teny hoe "Hello World". Izy io dia mirakitra ireo lohahevitra toy ny redirects amin'ny lahatsoratra, ny fomba fanokafana varavarankelim-pandefasana terminal, izay hametrahana ny sora-tanana misy anao, ny fomba fampisehoana ny teny hoe "Hello World" sy ireo hevi-baventy sasany amin'ny karazan-drakitra toy ny quotes ("").

Amin'ity herinandro ity dia handefa ireo mari-pamantarana fidirana aho. Misy toro-lalana hafa izay mampianatra izany karazan-javatra izany fa hitako fa mitsambikina amin'ny zavatra kely ambany izy ireo ary mety hanome fanazavana be loatra.

Inona no atao hoe safidy?

Ao amin'ny script "Hello World" avy amin'ny lesona farany, dia tena be pitsiny daholo izany. Tsy tena nanao zavatra mihitsy ilay script.

Ahoana no ahafahantsika manatsara ny script "Hello World"?

Ahoana ny momba ny script izay manome alalana ny olona mandositra azy? Raha tokony hilaza hoe "Hello World" dia hilaza hoe "Hello Gary", "Hello Tim" na "Hello Dolly".

Raha tsy misy ny fahafahana manaiky ny mari-pamantarana fidirana dia mila manoratra sora-tanana telo izahay "hellogary.sh", "hellotim.sh" ary "hellodolly.sh".

Amin'ny alàlan'ny famelana ny sora-tànana hamakiana ireo mari-pamantarana fidirana dia azontsika ampiasaina iray amin'ny soratra iray hiarahaba olona.

Ataovy ny varavarankelin'ny terminal (CTRL + ALT + T) ary tsindrio mankany amin'ny lahatahiry scripts anao amin'ny fandefasana ireto manaraka ireto: ( mikasika ny baiko cd )

cd scripts

Mamorona script vaovao antsoina hoe greetme.sh amin'ny alalan'ny fanoratana ireto manaraka ireto:

touch greet.sh

Sokafy ny script ao amin'ny editoranao tianao indrindra amin'ny fanoratana ireto manaraka ireto: ( momba ny baiko nano )

nano greetme.sh

Ampidiro ireto manaraka ireto ao anatin'ny nano:

#! / bin / bash echo "hello $ @"

Tsindrio CTRL sy O mba hamonjena ilay rakitra ary avy eo ny CTRL sy X mba hanakatona ilay rakitra.

Ampidiro ao amin'ny laharam-pampandrosoana ny anaranao ny fantsona ny script.

sh greetme.sh

Raha toa ka mihazona ny script miaraka amin'ny anarako aho dia maneho ny teny hoe "Hello Gary".

Ny andalana voalohany dia manana ny sariohatra #! / Bin / bash izay ampiasaina hamantarana ny rakitra ho bash script.

Ny andalana faharoa dia mampiasa ny fanambarana hoe echo ny teny hoe hello ary avy eo dia misy ny $ @ notation. ( momba ny baiko echo )

Ny $ @ dia manitatra mba hampisehoana ireo mari-pamantarana rehetra izay niditra miaraka amin'ny anaran'ny script. Noho izany raha aseho "sh greetme.sh tim" ny teny hoe "hello tim" dia haseho. Raha toa ka soratana "greetme.sh tim smith" ianao dia hiseho ny teny hoe "hello tim smith".

Mety ho tsara ny scriptme gratia.sh mba hilaza fotsiny hoe hello amin'ny fampiasana ny anarana voalohany. Tsy misy olona milaza hoe "hello gary newell" rehefa mihaona amiko izy ireo, dia mety hiteny hoe "salama tsara" izy ireo.

Andao isika hanova ny script mba hampiasana azy io fotsiny. Sokafy ny scriptmeume greetsh.shs ao amin'ny nano amin'ny fanoratana ireto manaraka ireto:

nano greetme.sh

Amboary ny script mba hamakiana azy toy izao:

#! / bin / bash echo "hello $ 1"

Soritsorio ny CTRL sy O ary tsindrio amin'ny tsindrio CTRL sy X.

Raiso ny sora-baventy araka ny aseho etsy ambany (asolo ny anarako miaraka aminao):

sh greetme.sh gary newell

Rehefa mihazakazaka ilay script ianao dia hilaza fotsiny hoe "salama tsara" (na manantena hoe "hello" ary na inona na inona anaranao.

Ny 1 taorian'ny sariohatry ny $ dia miteny amin'ny baiko echo, ampiasao ny singa voalohany. Raha manolo ny $ 1 amin'ny $ 2 ianao dia hampiseho ny "hello newell" (na izay rehetra anaranao).

Raha ovainao ny $ 2 miaraka amin'ny $ 3 ary ny rindrankajy amin'ny alim-peo 2 dia ny "Output" fotsiny dia ny hoe "Hello".

Azo atao ny maneho sy manara-maso ny isan'ireo fepetra efa napetraka ary ao anatin'ity lesona manaraka ity dia hampiseho ny fomba fampiasana ny mari-pamantarana ny mari-pamantarana.

Mba hampisehoana ny isa maromaro napetraka dia manorata ny scriptme.sh scripture.sh (nano greetme.sh) ary amboary ny lahatsoratra toy izao:

#! / bin / bash echo "nampiditra $ # names" echo "hello $ @"

Tsindrio ny CTRL sy O mba hamonjena ny script sy CTRL ary X mba hivoaka ny nano.

Ny $ # amin'ny tsipika faharoa dia mampiseho ny isa maromaro niditra.

Hatreto avokoa izany rehetra izany dia vaovao nefa tsy tena ilaina. Iza no mila script izay mampiseho fotsiny hoe "hello"?

Ny tena fampiasana ny fanambarana an-tsoratra dia ny hanomezana vokatra azo antoka sy manan-danja amin'ny mpampiasa. Raha azonao sary an-tsaina fa te hanao zavatra sarotra ianao, izay miteraka laharana maromaro mipoapoaka ary manipika karatra / folder dia mety hampiseho amin'ny mpampiasa ny zava-mitranga tsirairay.

Mifanohitra amin'izany kosa, ny mari-pamantarana fidirana dia mampifandray ny scripto. Raha tsy misy fepetra fampidiran-dresaka dia mila rakitsoratra ampolony no manao zavatra mitovy amin'izany saingy amin'ny anarana hafa kely.

Amin'izao rehetra izao dia misy sombin-tsoratra hafa mahaliana izay hevitra tsara ho fantatra ary hampiditra azy rehetra ao amin'ny tsipika code.

Sokafy ny soso-kevitry greetme.sh anao ary ataovy toy izao manaraka izao:

# !/ bin / bash echo "Filename: $ 0" echo "Process ID: $$" echo "---------------------------- --- "echo" nampiditra $ # anarana "echo" hello $ @ "

Tsindrio CTRL sy O mba hamonjena ilay rakitra ary ny CTRL ary X ny miala.

Manaova ny script ankehitriny (ahemotra amin'ny anaranao).

sh greetme.sh

Amin'ity indray mitoraka ity ny script dia maneho ireto manaraka ireto:

Filename: greetme.sh Fitsipika ID: 18595 ------------------------------ Niditra anarana 2 hello gary newell ianao

Ny $ 0 eo amin'ny andalana voalohany amin'ny script dia mampiseho ny anaran'ny script izay hazakazakao. Mariho fa dolara zero ary tsy dolara o.

Ny $$ amin'ny andalana faharoa dia maneho ny dingana arahin'ny script izay hazakazakao. Nahoana no ilaina izany? Raha toa ka mihazakazaka script ianao eo alohanao dia azonao atao ny manafoana azy io amin'ny alàlan'ny CTRL sy C. Tsindrio raha toa ka mihazakazaka ny script ianao ao ambadika ary manomboka mamaky sy manao toy izany hatrany na manomboka manimba ny rafitrao ilainao hamono azy.

Mba hamonoana script iray mihodina ao ambadiky ny ilanao ny idan'ny script. Tsy ho tsara ve raha toa ilay script dia nanome ny id ido ho ampahany amin'ny vokatra. ( manodidina ny ps ary mamono baiko )

Farany alohan'ny hamaranana ity lohahevitra ity dia te-hiresaka momba ny toerana misy ny vokatra aho. Isaky ny mihazakazaka ny script hatramin'izao dia navoaka tao amin'ny efijery ny output.

Tena mahazatra ny famoaham-peo an-tsoratra izay nosoratana tamin'ny dossier output. Mba hanaovana ity dia araho ny sora-baventy toy izao:

sh greetme.sh gary> greetme.log

Ny marika> ao amin'ny baiko etsy ambony dia mamoaka ny lahatsoratra "hello gary" ho an'ny antontan-taratasy antsoina hoe greetme.log.

Isaky ny mihazakazaka ny script miaraka amin'ny marika> dia manoratra ny ao anatin'ny rakitra output. Raha tianao ny hampidirina amin'ny solosaina ny>> amin'ny>>.

famintinana

Tokony ho afaka manoratra lahatsoratra amin'ny efijery ianao ary manaiky ireo mari-pamantarana fidirana.