Iesācēju rokasgrāmata BASH - 1.daļa - Sveiki Pasaule

Internetā ir daudz rokasgrāmatu, kurā parādīts, kā izveidot Shell skriptus, izmantojot BASH, un šis ceļvedis ir paredzēts nedaudz atšķirīgam spin, jo to ir uzrakstījis kāds, kam ir ļoti maz čaulas skriptu pieredzē.

Tagad jūs domājat, ka šī ir dumjš ideja, bet es uzskatu, ka dažas vadlīnijas ar jums runā tā, it kā jūs jau esat eksperts, un citas rokasgrāmatas aizņem pārāk ilgi, lai izvairītos no vajāšanas.

Kaut gan mana LINUX / UNIX apvalka skriptu pieredze ir ierobežota, es esmu programmatūras izstrādātājs, ko esmu tirgojis, un es esmu pelēks skriptu valodās, piemēram, PERL, PHP un VBScript.

Šīs rokasgrāmatas punkts ir tāds, ka jūs uzzināsiet, kā iemācīšos, un visu informāciju, kuru uzņemšu, nodosim jums.

Darba sākšana

Protams, ir daudz teoriju, ko es varētu uzreiz nodot jums, piemēram, aprakstot dažādus čaulas tipus un BASH lietošanu priekš KSH un CSH.

Lielākā daļa cilvēku, kad mācā kaut ko jaunu, grib pamēģināt un sākt ar dažām praktiskām nodarbībām vispirms, un, paturot prātā, es nedomāju, ka tev būs nevajadzīgas lietas, kas pašlaik nav svarīgas.

Viss, kas jums nepieciešams šī ceļveža izpildīšanai, ir teksta redaktors un terminālis, kurā darbojas BASH (lielākajā daļā Linux izplatīšanas noklusējuma logu).

Tekstu redaktori

Citas rokasgrāmatas, kuras esmu izlasījis, ir norādījušas, ka jums ir nepieciešams teksta redaktors, kas ietver komandu krāsu kodēšanu, un ieteicamie redaktori ir vai nu VIM, vai EMACS .

Krāsu kodēšana ir jauka, jo tā uzsver komandas, rakstot tās, bet absolūtais iesācējs jūs varētu pavadīt dažas nedēļas, apgūstot VIM un EMACS, nerakstot nevienu koda rindu.

No diviem es gribētu EMACS, bet, godīgi sakot, es gribētu izmantot vienkāršu redaktoru, piemēram, nano , gedit vai leafpad.

Ja rakstāt skriptus savā datorā un jūs zināt, ka jums vienmēr būs pieeja grafiskajai videi, tad jūs varat izvēlēties labāko jums labāko redaktoru, un tas var būt vai nu grafisks, piemēram, GEdit, vai arī redaktors, kas darbojas tieši terminālā piemēram, nano vai vim.

Šīs rokasgrāmatas mērķiem es izmantošu nano, jo tas ir instalēts natively lielākajā daļā Linux distribūcijas, un tādēļ ir iespējams, ka tam būs pieeja.

Termināla loga atvēršana

Ja jūs izmantojat Linux izplatīšanu ar grafisko darbvirsmu, piemēram, Linux Mint vai Ubuntu, jūs varat atvērt termināla logu, nospiežot CTRL + ALT + T.

Kur ievietot skriptus

Šīs apmācības nolūkos jūs varat ievietot savus skriptus mapē zem savas mājas mapes.

Termināla logā pārliecinieties, ka esat savā mapē, ierakstot šādu komandu:

cd ~

Cd komanda apzīmē izmaiņu direktoriju un tilde (~) ir īsceļa jūsu mājas mapei.

Jūs varat pārbaudīt, vai esat pareizajā vietā, ierakstot šādu komandu:

pwd

PWD komanda jums pateiks savu pašreizējo darba direktoriju (kur atrodas kataloga kokā). Manā gadījumā tas atgriezās / home / gary.

Tagad acīmredzot jūs nevēlaties, lai jūsu skripti taisni iekļautu mājas mapē, izveidojot mapi ar nosaukumu skriptus, ierakstot šādu komandu.

mkdir skripti

Mainiet jauno skriptu mapi, ierakstot šādu komandu:

cd skripti

Jūsu pirmais skripts

Parasti mācot, kā programmēt, lai pirmā programma vienkārši izvadītu vārdus "Hello World".

No savas skriptu mapes ievadiet šādu komandu:

nano helloworld.sh

Tagad nano logā ievadiet šādu kodu.

#! / bin / bash echo "sveika pasaule"

Nospiediet CTRL + O, lai saglabātu failu, un CTRL + X, lai izietu no nano.

Skripts sastāv no šādiem veidiem:

#! / Bin / bash jāiekļauj visu rakstīto skriptu augšdaļā, jo tas ļauj tulkiem un operētājsistēmai uzzināt, kā rīkoties ar failu. Būtībā vienkārši atcerieties to ievietot un aizmirst par to, kāpēc jūs to darāt.

Otrajā rindā ir viena komanda, ko sauc par echo, kura izvada tekstu, kas tūlīt seko tam.

Ievērojiet, ka, ja vēlaties parādīt vairāk nekā vienu vārdu, jums ir jāizmanto dubultās pēdiņas (") ap vārdiem.

Tagad varat palaist skriptu, ierakstot šādu komandu:

sh helloworld.sh

Vārdiem "sveiki pasaule" vajadzētu parādīties.

Vēl viens skriptu palaišanas veids ir šāds:

./helloworld.sh

Iespējams, ka, ja jūs nekavējoties palaidīsit šo komandu savā terminālā, jūs saņemsit atļaujas kļūdu.

Lai piešķirtu atļaujas skripta palaišanai šādā veidā, ierakstiet šādu:

sudo chmod + x helloworld.sh

Tātad, kas patiesībā notika tur? Kāpēc jūs varējāt palaist sh helloworld.sh, nemainot atļaujas, bet skriešana ./helloworld.sh izraisīja problēmu?

Pirmā metode ielādē bash tulku, kas ievada helloworld.sh kā izeju un izprot, kā ar to rīkoties. Bash tulkotājam jau ir atļaujas darboties, un vienkārši ir jāpalaiž skripta komandas.

Otra metode ļauj operētājsistēmai izpētīt, kā rīkoties ar skriptu, un tāpēc izpildes failam ir nepieciešams izpildes punkts.

Iepriekšējais skripts bija kārtībā, bet kas notiek, ja vēlaties parādīt pēdiņas?

Ir dažādi veidi, kā to panākt. Piemēram, jūs varat ievietot atpakaļ slīpsvītru pirms pēdiņām šādi:

echo \ "hello world \"

Tas radīs produkciju "sveiki pasaule".

Nogaidiet kādu minūti, kas notiek, ja vēlaties parādīt \ "sveiki pasaule \"?

Nu jūs varat izvairīties no izvairīšanās rakstzīmes, kā arī

echo \ \ "\" sveika pasaule \\ "\"

Tas radīs izlaidi \ "sveiki pasaule \".

Tagad es zinu, ko tu domā. Bet es patiešām vēlos parādīt \\ "\" sveika pasaule \\ "\"

Izmantojot echo ar visām šīm evakuācijas rakstzīmēm, var iegūt diezgan muļķīgi. Pastāv alternatīva komanda, ko var izmantot ar nosaukumu printf.

Piemēram:

printf '% s \ n' '\\ "\" sveiks pasaule \\ "\"'

Ņemiet vērā, ka teksts, kuru mēs vēlamies parādīt, ir starp vienas kotācijām. Printf komanda izraksta tekstu no jūsu skripta. % S nozīmē, ka tas parādīs virkni, \ n izvada jaunu rindu.

Kopsavilkums

Pirmajā daļā mēs patiešām nav daudz paveicies, bet, cerams, jums ir pirmais jūsu skripts.

Nākamajā daļā mēs centīsimies uzlabot sveiciena pasaules skriptu, lai parādītu tekstu dažādās krāsās, pieņemt un apstrādāt ievades parametrus, mainīgos un komentēt jūsu kodu.