Vatangidziri Mazano Ku BASH - Chikamu 1 - Hello World

Pane mazano akawanda pane internet inoratidza kuumba Shell scripts uchishandisa BASH uye mutungamiri uyu unofanirwa kupa shanduko yakasiyana zvakasiyana nokuti yakanyorwa nemumwe munhu ane ruzivo rwakawandisa script.

Iye zvino unogona kufunga kuti ichi chirevo chisina maturo asi ndinoona kuti mamwe mazano anotaurira kwauri sekunge iwe watova nyanzvi uye mamwe mazano anotora nguva yakareba kuti adedze kudzinga.

Kunyange zvazvo ini LINUX / UNIX shell scripting chiitiko chisingakwanisi, ndiri mushambadziri wepurogiramu nekutengeserana uye ini ndiri dab ruoko pane scripting mitauro yakadai se PERL, PHP uye VBScript.

Nheyo yemutungamiri uyu ndeyekuti iwe uchadzidza sezvandinodzidza uye chero ruzivo rwandinotora ini ndichapfuurira kwauri.

Kutanga

Pane pachena kuti yakawanda yedzidziso yokuti ini ndinogona kupfuurira kwamuri pakarepo sekutsanangura maitiro akasiyana ehogo uye zvakanakira kushandisa BASH pane KSH neCSH.

Vanhu vazhinji pavanodzidza chimwe chinhu chitsva vanoda kupinda mukati uye kutanga nezvimwe zvidzidzo zvinobatsira pakutanga uye nezvo mupfungwa dzangu handisi kuzokutora nekutora zvisingakoshi ikozvino.

Zvose zvaunoda kuti utungamirire mutungamiri uyu ndeyekunyora mharidzo uye kugumira kunoshandisa BASH (iyo yakazara shell pane dzakawanda kugoverwa kwe Linux).

Text Editors

Mamwe maerekero andakaverenga akaratidza kuti unoda mharidzo yemutauro iyo inosanganisira mavara emakodhi emirairo uye vanyori vakakurudzirwa ndevayo VIM kana EMACS .

Rudzi rwekodhi yekodha rakanaka sezvarinoratidzira rinorayira sezvaunoridzidzira asi asiri wekutanga iwe unogona kushandisa mavhiki mashomanana okudzidza VIM ne EMACS pasina kunyora mutsara mumwechete wekodhi.

Kunze kwemaviri ndinosarudza EMACS asi kuva vakatendeseka ndinoshandisa kushandisa mhariri iri nyore se nano , gedit kana leafpad.

Kana uri kunyora zvinyorwa pakombiyuta rako uye iwe unoziva kuti iwe uchagara uine ruzivo rwekufananidza nzvimbo iyo iwe unogona kusarudza mhariri inoshanda zvakanaka iwe uye iyo inogona kunge iri mifananidzo yakajeka seGedit kana mhariri inotungamirira mumutsetse zvakadai se nano kana vim.

Pamusoro pezvinangwa zvemufambiro uyu ndichave ndishandisa nano sezvainenge yaiswa natively pamazhinji eLinux kuparadzirwa uye naizvozvo zvinoita kuti iwe uve nekugona kusvika kwayo.

Kuvhura A Terminal Window

Kana uri kushandisa kushandiswa kweLinux ne-graphical desktop yakadai seLinux Mint kana Ubuntu unogona kuzarura firati yekuguma nekudhinda CTRL + ALT + T.

Kwokuisa Magwaro Ako

Nokuda kwezvinangwa zvidzidzo izvi unogona kuisa zvinyorwa zvako mune faira pasi pefaira yako yemusha.

Mukati yewindo risina kugadzikana iva nechokwadi kuti uri muimba yako yefaira nekunyora murairo unotevera:

cd ~

Mutemo weCd unomirira shanduko yechirangaridzo uye tilde (~) ndiyo nzira shoma yeimba yako yefaira.

Unogona kutarisa kuti uri munzvimbo yakakodzera nekunyora murairo unotevera:

pwd

Mutemo wepwd uchakuudza yako ikozvino yekushandura manyore (uko uri mumutauro wenyaya). Mune mhaka yangu yakadzoka / kumba / gary.

Zvino zviri pachena kuti iwe haungashushi kuisa mahwendefa ako mukati mefaira reimba kuitira kuti ugadzire faira inonzi mazvinyorwa nekunyora murairo unotevera.

mkdir scripts

Shandura mukati mutsva nyora zvinyorwa nekunyora murairo unotevera:

cd scripts

Your First Script

Iro tsika paunodzidza nzira yekugadzirira kuita purogiramu yekutanga kungoburitsa mazwi "Hello World".

Kubva mukati mefaira rako rekunyora faira murairo unotevera:

nano helloworld.sh

Ikozvino pinda nhamba inotevera muwindo re nano.

#! / bin / bash echo "hello world"

Dhinda CTRL + O kuti uchengetedze faira uye CTRL + X kuti ibve nano.

Iyo script pachayo inoumbwa seizvi:

I #! / Bin / bash inofanira kuiswa pamusoro pezvinyorwa zvose zvaunonyora sezvainobvumira vashanduri uye hurongwa hwekuziva kuziva kubata nayo faira. Chaizvoizvo ingoyeuka kuisa mukati uye kukanganwa kuti nei uchizviita.

Mutsara wechipiri une murairo umwechete unonzi echo unobudisa zvinyorwa zvinongotevera.

Cherechedza kuti kana iwe uchida kuratidza shoko rinopfuura rimwe unofanira kushandisa zvinyorwa zviviri (") kumativi ose.

Iwe unokwanisa ikozvino kumhanya script nekunyora murairo unotevera:

sh helloworld.sh

Mashoko okuti "hello nyika" anofanira kuonekwa.

Imwe nzira yekushandisa zvinyorwa ndeyotevera:

./helloworld.sh

Iko mikana ndeyokuti kana iwe uchitamba mutemo iwoyo mumutara wako pakarepo iwe uchawana kukanganisa kwemvumo.

Kupa mvumo yekushandisa script nenzira iyi chengetedza zvinotevera:

sudo chmod + x helloworld.sh

Saka chii chakaitika ipapo? Sei wakakwanisa kumhanya sh helloworld.sh usingashandisi mvumo asi kumhanya ./helloworld.sh yakakonzera dambudziko?

Nzira yekutanga inotakura muturikiri wehishe inotora helloworld.sh seyiyi uye inoshanda kuti chii chingaita nayo. Izvo zvinoshandiswa zvinoshandiswa zvinenge zvine zvibvumirano zvokumhanya uye zvinongoda kumhanya mirairo iri mu script.

Chechipiri nzira inobvumira kushandiswa kwebasa kuita basa rekuita ne script saka saka rinoda bhii rinotakatika kuitira kuti riite.

Nyaya iri pamusoro apa yakanga yakanaka asi chii chinoitika kana uchida kuratidza zvinyorwa zvinyorwa?

Pane nzira dzakasiyana-siyana dzekuita izvi. Somuenzaniso, unogona kuisa shure shure kwemashoko okuti:

echo \ "hello nyika \"

Izvi zvichange zvakabudisa zvakabuda "hello world".

Mirira kweminiti kunyange zvakadaro, zvakadini kana uchida kuratidza \ "hello world \"?

Zvakanaka iwe unogona kupukunyuka mhando dzevanopukunyuka zvakare

echo \\ "\" hello world \\ "\"

Izvi zvichaita kuti zvigadzirwa \ "hello world \".

Iye zvino ndinoziva zvaunofunga. Asi ini chaizvoizvo ndinoda kuratidza \\ "\" hello world \\ "\"

Kushandisa echo nevose ava vanopukunyuka vanogona kuwana zvakanyanyisa. Pane rimwe murairo unogona kushandisa unonzi printf.

Semuyenzaniso:

printf '% s \ n' '\\ "\" hello world \\ "\"'

Cherechedza kuti zvinyorwa zvatinoda kuratidzira zviri pakati pekodha imwechete. The printf command outputs text from your script. I% s inoreva kuti icharatidza tambo, \ n inobudisa mutsva mutsva.

Summary

Hatina kunyatsovhara nzvimbo yakawanda muchikamu chimwe chete asi tichivimba kuti une script yako yokutanga inoshanda.

Muchikamu chinotevera tichave tichitarisa pakuvandudza pane sarlo world script kuti tinyatsoratidza mavara mumarudzi akasiyana-siyana, kugamuchira nekubata mitsara yekupinza, kuchinja uye kuudza kero yako.