Skip to main content

Nybörjarguide till bas - Hello World

Anonim

Det finns många guider på internet som visar hur man skapar Shell-skript med hjälp av BASH och den här guiden syftar till att ge en något annorlunda snurr, eftersom den är skriven av någon som har mycket lite skalskriptupplevelse.

Nu kanske du tror att det här är en dum idé men jag tycker att några guider pratar med dig som om du redan är en expert och andra guider tar för lång tid att skära till jakten.

Medan min LINUX / UNIX skalskriptupplevelse är begränsad, är jag en mjukvaruutvecklare av handel och jag är en dab-hand på skriptspråk som PERL, PHP och VBScript.

Poängen med den här guiden är att du kommer att lära dig när jag lär dig och någon information jag hämtar kommer jag att vidarebefordra till dig.

Komma igång

Det finns uppenbarligen en hel del teori som jag skulle kunna vidarebefordra till dig genast, såsom att beskriva de olika typerna av skal och fördelarna med att använda BASH över KSH och CSH.

De flesta människor när de lär sig något nytt vill hoppa in och börja med några praktiska lektioner först och med det i åtanke kommer jag inte att dra dig med trivia som inte är viktigt just nu.

Allt du behöver för att följa den här guiden är en textredigerare och en terminal som kör BASH (standardskalet på de flesta Linux-distributioner).

Textredigerare

Andra guider som jag har läst har föreslagit att du behöver en textredigerare som innehåller färgkodning av kommandon och de rekommenderade redigerarna är antingen VIM eller EMACS.

Färgkodning är fin eftersom det markerar kommandon när du skriver dem men för den absoluta nybörjaren kan du spendera de första veckorna som lär sig VIM och EMACS utan att skriva en enda kodlinje.

Av de två föredrar jag EMACS, men för att vara ärlig föredrar jag att använda en enkel redaktör som nano, gedit eller leafpad.

Om du skriver skript på din egen dator och du vet att du alltid har tillgång till en grafisk miljö kan du välja den redigerare som fungerar bäst för dig och det kan antingen vara grafiskt som GEdit eller en redaktör som kör direkt i terminalen som nano eller vim.

I den här handboken kommer jag att använda nano eftersom den installeras nationellt på de flesta Linux-distributioner och det är därför troligt att du får tillgång till det.

Öppnar ett terminalfönster

Om du använder en Linux-distribution med grafiskt skrivbord som Linux Mint eller Ubuntu kan du öppna ett terminalfönster genom att trycka på CTRL + ALT + T.

Var ska du lägga in dina skript

I denna handledning kan du placera dina skript i en mapp under din hemmapp.

Inom ett terminalfönster, se till att du är i din hemmapp genom att skriva följande kommando:

cd ~

CD-kommandot står för byte katalog och tilde (~) är en genväg för din hemmapp.

Du kan kontrollera att du befinner dig på rätt plats genom att skriva följande kommando:

pwd

Pwd-kommandot kommer att berätta för din nuvarande arbetsmapp (där du är i katalogträdet). I mitt fall kom det tillbaka / hem / gary.

Nu kommer du självklart inte att lägga dina skript direkt i hemmappen så skapa en mapp som heter skript genom att skriva följande kommando.

mkdir-skript

Byt till den nya skriptmappen genom att skriva följande kommando:

cd skript

Ditt första skript

Det är vanligt när man lär sig hur man programmerar för att få det första programmet att enkelt skriva ut orden "Hello World".

Skriv in följande kommando från din skriptmapp:

nano helloworld.sh

Ange nu följande kod i nano-fönstret.

#! / bin / bash echo "hej världen"

Tryck CTRL + O för att spara filen och CTRL + X för att avsluta nano.

Skriptet är uppbyggt enligt följande:

#! / Bin / bash måste inkluderas längst upp i alla skript du skriver, eftersom det låter tolkar och operativsystemet vet hur man hanterar filen. Kom ihåg bara att lägga in det och glömma varför du gör det.

Den andra raden har ett enda kommando som heter echo som matar ut texten som direkt följer den.

Observera att om du vill visa mer än ett ord måste du använda dubbla citat (") runt orden.

Du kan nu köra skriptet genom att skriva följande kommando:

sh helloworld.sh

Orden "hej världen" ska visas.

Ett annat sätt att köra skript är följande:

./helloworld.sh

Chansen är att om du kör det här kommandot i din terminal genast får du ett behörighetsfel.

För att ge behörigheter för att köra skriptet på det här sättet skriver du följande:

sudo chmod + x helloworld.sh

Så vad hände faktiskt där? Varför kunde du köra sh helloworld.sh utan att ändra behörigheter men kör ./helloworld.sh orsakade ett problem?

Den första metoden laddar bash tolken som tar helloworld.sh som en inmatning och tar reda på vad man ska göra med det. Bash tolken har redan behörigheter att köra och behöver bara köra kommandon i manuset.

Den andra metoden låter operativsystemet ta reda på vad man ska göra med manuset och därför krävs en körbar bit för att kunna utföras.

Ovanstående skript var ok men vad händer om du vill visa citattecken?

Det finns olika sätt att uppnå detta. Till exempel kan du sätta backslash före citattecken enligt följande:

echo "hej värld "

Detta kommer att producera produktionen "hej värld".

Vänta en stund men vad händer om du vill visa "hej värld "?

Tja, du kan också undkomma flykttecken

echo "" hej världen ""

Detta kommer att producera produktionen "hej världen ".

Nu vet jag vad du tänker på. Men jag vill verkligen visa "" hej världen ""

Att använda eko med alla dessa flykttecken kan bli ganska dumt. Det finns ett alternativt kommando du kan använda kallad printf.

Till exempel:

printf '% s n' ' "" hej världen ""'

Observera att texten som vi vill visa är mellan enkla citat. Utskriften printf skriver ut text från ditt skript. % S betyder att det kommer att visa en sträng, n skriver ut en ny rad.

Sammanfattning

Vi har inte riktigt täckt mycket mark i del ett men förhoppningsvis har du ditt första skript som fungerar.

I nästa del ser vi på att förbättra på hej världsskriptet för att visa text i olika färger, acceptera och hantera inmatningsparametrar, variabler och kommentera din kod.