Začetni vodič za BASH - 1. del - Hello World

Obstaja veliko vodnikov na internetu, ki kažejo, kako ustvariti Shell skripte z BASH in ta vodnik ima za cilj nekoliko drugačen spin, ker ga je napisal nekdo, ki ima zelo malo izkušenj s skripti.

Zdaj lahko mislite, da je to neumna ideja, vendar se mi zdi, da se nekateri vodniki pogovarjajo z vami, kot da ste že strokovnjak, in da so drugi vodniki traja predolgo, da bi se zmanjšali na lov.

Čeprav je moja izkušnja s skripti za lupo LINUX / UNIX omejena, sem razvijalec programske opreme po trgovini in jaz sem daba v skriptnih jezikih, kot so PERL, PHP in VBScript.

Bistvo tega vodnika je, da se boste naučili, ko se učim, in vse informacije, ki jih bom vzela, vam bom posredoval.

Začetek

Očitno je veliko teorije, ki bi vam lahko takoj posredoval, na primer opisovanje različnih vrst lupine in prednosti uporabe BASH nad KSH in CSH.

Večina ljudi, ko se učita nekaj novega, želi najprej skočiti in začeti z nekaj praktičnimi tečaji in s tem v mislih ne bom nosil tavosti, ki trenutno ni pomembno.

Vse, kar potrebujete za spremljanje tega vodnika, je urejevalnik besedil in terminal, ki teče BASH (privzeta lupina večine distribucij Linuxa).

Urejevalci besedil

Drugi vodniki, ki sem jih prebral, so predlagali, da potrebujete urejevalnik besedil, ki vključuje barvno kodiranje ukazov in priporočeni uredniki so bodisi VIM ali EMACS .

Barvno kodiranje je lepo, saj ob vnašanju ukazov poudari ukaze, a za absolutnega začetnika lahko prvih nekaj tednov preživite z učenjem VIM in EMACS, ne da bi napisali eno vrstico kode.

Od obeh mi je všeč EMACS, vendar sem iskren, raje uporabljam preprost urednik, kot so nano , gedit ali leafpad.

Če pišete skripte na svojem računalniku in veste, da boste vedno imeli dostop do grafičnega okolja, potem lahko izberete urejevalnik, ki vam najbolj ustreza in je lahko grafično, na primer GEdit ali urejevalnik, ki deluje neposredno v terminalu kot so nano ali vim.

V tem priročniku bom uporabljal nano, saj je nameščen na večini distribucij Linuxa, zato je verjetno, da boste imeli dostop do nje.

Odpiranje terminalske okence

Če uporabljate distribucijo Linuxa z grafičnim namizjem, kot je Linux Mint ali Ubuntu, lahko odprete terminalsko okno s pritiskom na CTRL + ALT + T.

Kje položiti svoje skripte

V tem vodiču lahko svoje skripte postavite v mapo pod svojo domačo mapo.

V oknu terminala se prepričajte, da ste v domači mapi, tako da vnesete ta ukaz:

cd ~

Ukaz cd je zamenjal imenik in tilde (~) je bližnjica za vašo domačo mapo.

Preverite, ali ste na pravem mestu, tako da vnesete naslednji ukaz:

pwd

Ukaz pwd vam bo povedal vaš trenutni delovni imenik (kjer ste v drevesu imenikov). V mojem primeru se je vrnil / dom / gary.

Zdaj očitno ne želite, da svoje skripte naravnost v domačo mapo, zato ustvarite mapo z imenom skripte tako, da vnesete naslednji ukaz.

skripti mkdir

Spremenite se v mapo novih skriptov, tako da vnesete naslednji ukaz:

cd skripte

Vaš prvi scenarij

Običajno je učenje, kako program narediti, da prvi program preprosto izpiąe besede "Hello World".

Iz mape skriptov vnesite ta ukaz:

nano helloworld.sh

Sedaj v nano okno vnesite naslednjo kodo.

#! / bin / bash echo "hello world"

Pritisnite CTRL + O, da shranite datoteko in CTRL + X, da zapustite nano.

Sam scenarij je sestavljen iz naslednjega:

Na vrh vseh skriptov, ki jih pišete, je treba vključiti #! / Bin / bash, saj tolmačem in operacijskim sistemom omogoča, da znajo ravnati s to datoteko. V bistvu samo ne pozabite, da ga spravite in pozabite, zakaj to storite.

Druga vrstica ima en ukaz, imenovan echo, ki izpisuje besedilo, ki ga takoj sledi.

Upoštevajte, da če želite prikazati več kot eno besedo, morate uporabiti dvojne narekovaje (") okoli besed.

Sedaj lahko zaženete skript tako, da vnesete ta ukaz:

sh helloworld.sh

Pojavi se besede "hello world".

Drug način za zagon skriptov je naslednji:

./helloworld.sh

Verjetno je, da če takoj izvedete ta ukaz v vašem terminalu, boste dobili napako pri dovoljenju.

Če želite dovoliti, da zaženete skript na ta način, vnesite naslednje:

sudo chmod + x helloworld.sh

Torej, kaj se je tam dejansko zgodilo? Zakaj ste lahko zagnali sh helloworld.sh brez spreminjanja dovoljenj, vendar se je zagnalo ./helloworld.sh povzročila težavo?

Prva metoda naloži bash tolmača, ki vzame helloworld.sh kot vhod in določi, kaj storiti z njim. Bash tolmač že ima dovoljenje za zagon in mora le zagnati ukaze v skriptu.

Druga metoda omogoča operacijskemu sistemu, da razume, kaj storiti s skriptom, zato je za izvedbo potreben izvršljiv bit.

Zgornji scenarij je bil v redu, ampak kaj se zgodi, če želite prikazati narekovaje?

To lahko dosežemo na različne načine. Na primer, lahko postavite poševnico pred naslovi na naslednji način:

echo \ "hello world \"

To bo ustvarilo izhod "hello svet".

Počakajte trenutek, kaj, če želite prikazati \ "hello world \"?

No, lahko tudi pobegnete znake pobega

echo \\ "\" hello svet \\ "\"

To bo ustvarilo izhod \ "hello svet \".

Zdaj vem, kaj razmišljate. Ampak res želim prikazati \\ "\" hello svet \\ "\"

Uporaba odmevov z vsemi temi osebami v sili lahko postane precej neumno. Obstaja alternativni ukaz, ki ga lahko uporabljate pod imenom printf.

Na primer:

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

Upoštevajte, da je besedilo, ki ga želimo prikazati, med posameznimi narekovaji. Ukaz printf izpisuje besedilo iz vašega skripta. % S pomeni, da bo prikazal niz, \ n izpisa novo vrstico.

Povzetek

V prvem delu nismo zares pokrivali veliko, vendar upamo, da imate svoj prvi scenarij.

V naslednjem delu bomo iskali izboljšanje svetovnega scenarija hello za prikaz besedila v različnih barvah, sprejemanje in obdelavo vhodnih parametrov, spremenljivk in komentiranje vaše kode.