Vodič za početnike BASH-u - Dio 1 - Pozdrav svijetu

Na internetu postoji mnogo vodiča koji pokazuju kako stvoriti Shell skripte pomoću BASH-a, a ovaj vodič ima za cilj dati malo drugačiju spin jer je napisao netko tko ima vrlo malo skriptnih iskustava.

Sada biste mogli pomisliti da je to glupa ideja, ali smatram da vam neki vodiči razgovaraju s vama kao da ste već stručni i drugi vodiči predugo traju kako bi se smanjili na potjeru.

Dok je moj LINUX / UNIX shell skriptiranje iskustvo ograničeno, razvojem sam softvera po trgovini, a ja sam ruka na skriptnim jezicima kao što su PERL, PHP i VBScript.

Točka ovog vodiča je da ćete naučiti kako naučim i sve informacije koje pokupim prenijet ću vam.

Početak rada

Očito ima mnogo teorije da bih vam mogao odmah prenijeti, kao što je opisivanje različitih tipova ljuske i prednosti korištenja BASH-a na KSH i CSH.

Većina ljudi kada uči nešto novo želi skočiti i započeti s nekim praktičnim lekcijama na prvom mjestu i s tim na umu neću vas voditi trivijalnosti koja trenutno nije važna.

Sve što vam je potrebno za praćenje ovog vodiča je uređivač teksta i terminal koji izvodi BASH (zadanu ljusku na većini Linux distribucija).

Urednici teksta

Ostali vodiči koje sam pročita predložili su da trebate uređivač teksta koji uključuje kodiranje boja naredbi, a preporučeni urednici su VIM ili EMACS .

Kodiranje boje je lijepo jer naglašava naredbe dok ih upisujete, ali za apsolutni početnik možete provesti prvih nekoliko tjedana učenja VIM-a i EMACS-a bez pisanja jednog retka koda.

Od ove dvije volim EMACS, ali da budem iskren, radije bih koristio jednostavan urednik kao što su nano , gedit ili leafpad.

Ako pišete skripte na svom računalu i znate da ćete uvijek imati pristup grafičkom okruženju, možete odabrati urednik koji vam najbolje odgovara i može biti grafički poput GEdit ili urednika koji se izravno kreće u terminalu kao što su nano ili vim.

U svrhu ovog vodiča koristit ću nano jer je nativno instaliran na većinu Linux distribucija i stoga je vjerojatno da ćete mu imati pristup.

Otvaranje prozora terminala

Ako koristite Linux distribuciju s grafičkom radnom površinom, kao što je Linux Mint ili Ubuntu, možete otvoriti prozor terminala pritiskom tipke CTRL + ALT + T.

Gdje staviti vaše skripte

U svrhu ovog vodiča skripte možete staviti u mapu ispod svoje početne mape.

Unutar prozora terminala provjerite jeste li u kućnoj mapi upisivanjem sljedeće naredbe:

cd

Naredba cd označava promjenu mape i tilda (~) je prečac za vašu kućnu mapu.

Možete provjeriti jeste li na ispravnom mjestu upisivanjem sljedeće naredbe:

pwd

Pwd naredba će vam reći svoj sadašnji radni imenik (gdje se nalazite u stablu direktorija). U mom slučaju je vratio / home / gary.

Sada očito ne želite staviti skripte ravno u kućnu mapu tako da stvorite mapu koja se zove skripta upisivanjem sljedeće naredbe.

mkdir skripte

Promijenite mapu nove skripte upisivanjem sljedeće naredbe:

cd skripti

Vaša prva skripta

Uobičajeno je kada učite kako programirati kako bi prvi program jednostavno izlazio riječi "Hello World".

U mapi skripti unesite sljedeću naredbu:

nano helloworld.sh

Sada unesite sljedeći kod u nano prozor.

#! / bin / bash echo "hello svijet"

Pritisnite CTRL + O za spremanje datoteke i CTRL + X za izlaz iz nano-a.

Sam scenarij je sastavljen kako slijedi:

#! / Bin / bash mora biti uključen na vrh svih skripti koje pišete jer omogućava tumačima i operativni sustav da zna rukovati datotekom. Uglavnom samo zapamtite da ga stavite i zaboravite zašto to učinite.

Druga linija ima jednu naredbu pod nazivom echo koja izlaže tekst koji ga odmah slijedi.

Imajte na umu da ako želite prikazati više od jedne riječi, trebate upotrijebiti dvostruke navodnike (") oko riječi.

Sada možete pokrenuti skriptu upisivanjem sljedeće naredbe:

sh helloworld.sh

Treba se pojaviti riječi "hello world".

Drugi način vođenja skripti je sljedeći:

./helloworld.sh

Šanse su da odmah pokrenete naredbu na svom terminalu dobijete pogrešku o dopuštenjima.

Da biste ovlasti za pokretanje skripte na ovaj način, upišite sljedeće:

sudo chmod + x helloworld.sh

Pa što se zapravo dogodilo tamo? Zašto ste mogli pokrenuti sh helloworld.sh bez mijenjanja dozvola, ali trčanje ./helloworld.sh izazvao je problem?

Prva metoda učitava bash tumač koji uzima helloworld.sh kao ulaz i razrađuje što će s njom raditi. Interpreter bash već ima dopuštenja za pokretanje i samo treba pokrenuti naredbe u skripti.

Druga metoda omogućava operacijskom sustavu da riješi što će raditi s skriptom pa stoga zahtijeva izvršnu bit kako bi se izvršila.

Gornja skripta bila je ok, ali što se događa ako želite prikazati navodnike?

Postoje razni načini za postizanje toga. Na primjer, možete navesti unatrag prije navodnika kako slijedi:

echo \ "hello svijet \"

Ovo će proizvesti izlaz "hello svijet".

Čekajte na trenutak, što ako želite prikazati \ "hello svijet \"?

Pa možete pobjeći i od escape znakova

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

Ovo će proizvoditi izlaz \ "hello world \".

Sada znam što mislite. Ali ja stvarno želim prikazati \\ "\" hello world \\ "\"

Korištenje eho sa svim tim escape karakterima mogu dobiti prilično glup. Postoji alternativna naredba koju možete koristiti tzv. Printf.

Na primjer:

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

Napominjemo da je tekst koji želimo prikazati između jednostrukih navoda. Naredba printf izlazi iz teksta skripte. % S znači da će prikazati niz, \ n izlazi novu liniju.

Sažetak

Zapravo, nismo stvarno pokrivali mnogo dijelova, ali nadamo se da radite svoj prvi scenarij.

U sljedećem dijelu gledat ćemo poboljšanje na hello svjetskoj skripti za prikaz teksta u različitim bojama, prihvaćanje i upravljanje ulaznim parametrima, varijablama i komentiranje vašeg koda.