Pradedančiųjų vadovas BASH - 1 dalis - Sveiki pasaulis

Internetu yra daug vadovų, rodančių, kaip kurti "Shell" scenarijus naudojant "BASH", ir šis vadovas siekia šiek tiek kitokio nugaros, nes jį parašė tas, kuris turi labai mažai aptikimo scenarijų.

Dabar galbūt manote, kad tai kvaila idėja, bet man atrodo, kad kai kurie vadovai kalbasi su tavimi, tarsi jau esate ekspertas, o kiti vadovai užima pernelyg ilgą laiką, kad sumažintų persekiojimą.

Nors mano "LINUX / UNIX" scenarijų scenarijaus patirtis yra ribota, aš esu prekybos programinės įrangos kūrėjas, o aš naudoju scenarijų kalbas, tokias kaip PERL, PHP ir VBScript.

Šio vadovo tikslas yra tas, kad sužinosite, kaip aš moku, ir bet kokią informaciją, kurią pasiimčiau, tapsiu jums.

Pradžia

Žinoma, yra daug teorijos, kurią galėčiau iš karto perduoti jums, pavyzdžiui, apibūdinant skirtingus apvalkalo tipus ir BASH naudojimo privalumus per KSH ir CSH.

Dauguma žmonių, mokydami kažką naujo, nori iššokti ir pradėti nuo kai kurių praktinių pamokų pirmiausia, ir turint omenyje tai, kad aš nesiruošiu tavęs nieko, kuris šiuo metu nėra svarbus.

Viskas, ko jums reikia norint laikytis šio vadovo, yra teksto redagavimo priemonė ir terminalas, kuriame veikia "BASH" (numatytasis lange daugumoje "Linux" paskirstymų).

Teksto redaktoriai

Kiti gairiai, kuriuos aš perskaičiau, parodė, kad jums reikia teksto redaktoriaus, kuriame yra spalvų kodavimo komandos, o rekomenduojami redaktoriai yra VIM arba EMACS .

Spalvinis kodavimas yra gražus, nes jis žymi komandas, kai jas įvedate, tačiau absoliučiai pradedantiesiems galite praleisti pirmąsias kelias savaites mokytis VIM ir EMACS be rašymo vienos eilutės kodo.

Iš dviejų noriu EMACS, bet sąžiningai norėčiau naudoti paprastą redaktorių, pvz., " Nano" , "gedit" arba "leafpad".

Jei rašote scenarijus savo kompiuteryje ir žinote, kad visada turėsite prieigą prie grafinės aplinkos, galėsite pasirinkti tinkamiausią jums redaktorių, kuris gali būti grafinis, pvz., "GEdit" arba redaktorius, kuris veikia tiesiai į terminalą pvz., "nano" arba "vim".

Šiame vadove turėsiu naudoti "nano", nes jis įdiegtas natively į daugumą "Linux" paskirstymų, todėl gali būti, kad prie jo galėsite prisijungti.

Terminalo lango atidarymas

Jei naudojate "Linux" platinimą naudodami grafinį darbastalį, pvz., "Linux Mint" arba "Ubuntu", galite atidaryti terminalo langą paspausdami CTRL + ALT + T.

Kur įdėti savo scenarijus

Šiame vadovėlyje galite įdėti savo scenarijus į katalogą po savo namų aplanke.

Per terminalo langą įsitikinkite, kad esate savo namų aplanke, įvesdami šią komandą:

cd ~

"Cd" komanda reiškia pakeitimo katalogą, o tildė (~) yra jūsų namų aplanko nuoroda.

Galite patikrinti, ar esate teisingoje vietoje, įveskite šią komandą:

pwd

Pwd komanda pasakys jums savo esamą darbo katalogą (kur esate aplanko medyje). Mano atveju jis grįžo / home / gary.

Dabar akivaizdu, kad nenorėsite tiesiogiai įdėti savo scenarijų į namų aplanką, kad sukurtumėte aplanką, pavadintą scenarijus, įveskite šią komandą.

mkdir scenarijus

Pakeiskite į naują scenarijų aplanką, įveskite šią komandą:

cd scenarijus

Jūsų pirmasis scenarijus

Paprastai mokant, kaip programuoti, pirmoji programa tiesiog įveda žodžius "Sveiki pasaulis".

Iš savo scenarijų aplanko įveskite šią komandą:

nano helloworld.sh

Dabar nano lange įveskite šį kodą.

#! / bin / bash echo "sveikas pasaulis"

Norėdami išsaugoti failą, paspauskite CTRL + O ir CTRL + X, kad išeitumėte iš nano.

Pats pats scenarijus sudarytas taip:

#! / Bin / bash turi būti įtrauktas į visų scenarijų, kuriuos rašote, viršuje, nes tai leidžia vertėjams ir operacinei sistemai žinoti, kaip tvarkyti failą. Iš esmės tiesiog nepamirškite įdėti jį ir pamiršti, kodėl tai darote.

Antrojoje eilutėje yra viena komanda vadinama echo, kuri išveda tekstą, kuris iš karto seka jį.

Atkreipkite dėmesį, kad jei norite rodyti daugiau nei vieną žodį, turite naudoti dvigubas kabutes (") aplink žodžius.

Dabar galite paleisti scenarijų, įvesdami šią komandą:

sh helloworld.sh

Turėtų pasirodyti žodžiai "sveiki pasaulis".

Kitas skriptų paleidimo būdas yra toks:

./helloworld.sh

Tikėtina, kad jei iškart paleisite šią komandą į savo terminalą, gausite leidimo klaidą.

Tam, kad suteiktų leidimus paleisti scenarijų tokiu būdu, įveskite:

sudo chmod + x helloworld.sh

Taigi, kas čia iš tiesų įvyko? Kodėl jūs galėjote paleisti sh helloworld.sh nepakeičiant leidimų, bet paleidus ./helloworld.sh sukėlė problemą?

Pirmasis metodas įkelia "bash" vertėją, kuris įveda "helloworld.sh" ir nurodo, ką daryti su juo. "Bash" vertėjas jau turi leidimus paleisti ir tiesiog turi paleisti scenarijaus komandas.

Antrasis metodas leidžia operacinei sistemai išsiaiškinti, ką daryti su scenarijau, todėl ją vykdant reikia vykdyti vykdomąjį failą.

Ankstesnis scenarijus buvo gerai, bet kas atsitiks, jei norite rodyti kabutes?

Yra keletas būdų tai pasiekti. Pavyzdžiui, prieš kabutines galite pridėti atvirkštinį brūkšnį:

echo \ "sveikas pasaulis \"

Tai sukurs rezultatą "sveikas pasaulis".

Palaukite minutę nors, ką norėtumėte parodyti \ "sveikas pasaulis \"?

Na, jūs taip pat galite išvengti pabėgimo simbolių

echo \ \ "\" sveikas pasaulis \\ "\"

Tai sukurs rezultatą \ "sveikas pasaulis \".

Dabar žinau, ką tu galvoji. Bet aš tikrai noriu parodyti \\ "\" sveika pasaulis \\ "\"

Naudojant echo su visais šiais pabėgimo simboliais gali būti gana kvailas. Yra ir kita komanda, kurią galite naudoti vadinamą "printf".

Pavyzdžiui:

printf '% s \ n' '\\ "\" sveikas pasaulis \\ "\"'

Atminkite, kad tekstas, kurį norime rodyti, yra tarp atskirų kabučių. "Printf" komanda išveda tekstą iš savo scenarijaus. % S reiškia, kad jis parodys eilutę, \ n išveda naują eilutę.

Santrauka

Iš tiesų mes iš tikrųjų neapsimokėme daugelio priežasčių, tačiau tikimės, kad jūsų pirmasis scenarijus dirbs.

Kitame skyriuje mes ieškosime geresnio "hello world" scenarijaus, rodydami skirtingų spalvų tekstą, priimdami ir apdorodami įvesties parametrus, kintamuosius ir komentuodami savo kodą.