Hva er et Bash -skript?

What Is Bash Script



Har du noen gang hørt faren din fortelle deg å ta et glass vann? Du har et valg å si Nei, men datamaskiner har ikke det valget. Datamaskiner kommer til å gjøre akkurat det du vil be dem gjøre. Bash er bare et skall som lar deg kommunisere med datamaskinen og la deg gi instruksjoner til den. Et skript er i utgangspunktet bare et sett med instruksjoner gitt til datamaskinen for å utføre forskjellige meningsfulle oppgaver. Et skript hjelper deg med å automatisere forskjellige oppgaver sammen med luksusen for å oppnå resultater raskere enn den vanlige prosedyren. Normalt skriver du i terminalen en grunnleggende eller forhåndsbash -kommando, og den kjøres på den med en gang. I bash -skript kan du gi flere instruksjoner eller kommandoer samtidig, og datamaskinen ville utføre dem alle bare når du ville utføre skriptet. I et nøtteskall kan enkelt bash -kommando utføres i terminalen, men for å utføre en kombinasjon av flere kommandoer samtidig må du opprette et bash -skript.

Hvorfor bash er nyttig og hvem er det nyttig for?

Hvis du vil ha mer kontroll over operativsystemet og vil utføre forskjellige OS -relaterte oppgaver, er bash din måte å gå på. Bash refererer vi ikke bare til skriptspråket, men også til verktøyene som følger med Linux -operativsystemet. Hvert enkelt verktøy på Linux har sitt arbeid, og hver utfører en annen oppgave individuelt. Bash er veldig nyttig når du trenger å kombinere alle disse verktøyene og kjede dem sammen på en slik måte at de alle jobber i harmoni for å utføre en oppgave som er veldig vanskelig å gjøre ellers. For eksempel kan alt som har noe å gjøre med Linux OS også gjøres på andre programmeringsspråk som Python eller Perl, men det er veldig vanskelig å utføre forskjellige OS-relaterte oppgaver. En enkel, svart og hvit og enkleste måte å gjøre alt som angår Linux OS er ved å bruke bash. For alle som ønsker å utføre oppgaver som inkluderer Linux OS -verktøyene (for eksempel ls, cd, cat, touch, grep, etc.), er det veldig nyttig for ham/henne å lære bash i stedet for et annet programmeringsspråk.







Hvordan sammenligner Bash seg med andre programmeringsspråk?

Hvis vi snakker om bash så vet vi at bash ikke er et generelt programmeringsspråk, men en kommandolinjetolk. Bash er virkelig nyttig for å utføre oppgaver rundt forskjellige verktøy og prosesser med evnen til å kombinere forskjellige prosesser sammen og få dem til å jobbe mot et enkelt mål. Bash er veldig praktisk når det gjelder å håndtere og manipulere innganger og utganger, noe som er veldig vanskelig å gjøre på andre programmeringsspråk for generelle formål som python, C, etc. Men når det gjelder datastrukturer og komplekse oppgaver som som manipulering av komplekse data, kan bash ikke håndtere slike oppgaver, og vi må se mot programmeringsspråk som Python, Perl, C, etc. I programmeringsspråk kan du bygge programvare eller et verktøy, men du kan ikke bygge noen av dem i bash. Du kan imidlertid bruke bash til å kjøre verktøyene eller slå dem sammen for å kjøre effektivt. Det er som å bygge en rakett, hvis vi vurderer denne metaforen, vil programmeringsspråk hjelpe deg med å bygge raketten mens bash vil hjelpe deg med å kjøre raketten og hjelpe deg med å angi retningen og hjelpe deg med å lande den til månen eller mars.



Hvordan lage og kjøre Bash -skript?

For å lage et bash -skript må du først opprette en tekstfil med filtypen .sh på slutten av filnavnet. Du kan opprette bash -skriptfilen ved hjelp av terminalen.



$ta påscript.sh


Etter å ha skrevet inn kommandoen ovenfor, trykker du på enter -tasten, og du vil få en bash -skriptfil i din nåværende arbeidskatalog. Men det er ikke det, vi har opprettet skriptfilen, men vi må utføre visse handlinger for å fullføre skriptet og kjøre det. Først av alt, åpne skriptfilen i en nano -editor eller gedit, og skriv inn på den aller første linjen:





#!/bin/bash


Dette er en standard førstelinje for hver bash-skriptfil som hjelper den med å bli gjenkjent som et bash-script. Ethvert skript som ikke har #!/Bin/bash på første linje, vil ikke bli betraktet som et bash -skript, så sørg for å legge denne linjen til toppen av hvert skript. Når du har lagt denne linjen, kan du begynne å skrive inn i skriptet. For eksempel vil jeg skrive her en enkel ekkokommando:

$kastet utDette er LinuxHint, beste læringsplattformtilBash


Når du har skrevet denne kommandoen, kan du nå lagre den og gå tilbake til terminalen. Skriv i terminalen din:



$ls -til


Du kan se 'script.sh' skrevet i hvit farge, noe som er et tegn på at skriptet er en ikke-kjørbar fil, ettersom kjørbare filer vanligvis er i grønn farge. Ta en titt på venstre side der vi kunne se et mønster som -rw -r – r– som gjenspeiler at filen bare er lesbar og skrivbar.
Den første delen som inneholder 'rw' er tillatelsene for eieren sannsynligvis den nåværende brukeren.

Andre del som inneholder ‘r’ er tillatelsen for gruppen der vi har flere brukere.

Mens den tredje delen som inneholder ‘r’ er tillatelse for publikum, noe som betyr at alle kan ha disse tillatelsene for den nevnte filen.

'R' står for lesetillatelser, 'w' står for skrivetillatelser, 'x' står for kjørbare tillatelser. Det er klart at vi ikke ser x mot ‘script.sh’. For å legge til kjørbare tillatelser, er det to måter å gjøre det på.

Metode 1

I denne metoden kan du skrive en enkel chmod -kommando med ‘+x’, og den vil legge til de kjørbare tillatelsene.

$chmod+ x script.sh


Imidlertid er dette ikke den mest effektive måten å gi kjørbare tillatelser på, ettersom den gir kjørbare tillatelser ikke bare til eieren, men også til gruppen og offentligheten, noe vi absolutt ikke ønsker av sikkerhetshensyn. Ta en titt:

Metode 2

I denne metoden kan du bruke tall for å diktere tillatelsene til en fil. Før vi hopper inn i det, vil jeg gi deg en kort ide om hva disse tallene betyr og hvordan du kan bruke dem til å manipulere tillatelser.
les = 4
skrive = 2
utføre = 1
Tillatelsestall vil være i tre sifre etter chmod -kommandoen, og hvert siffer representerer tillatelsene til eieren, gruppen og andre (offentlige). For eksempel, for å gi lese-, skrive- og utførelsestillatelser til eieren og lesetillatelser til gruppen og andre ville være omtrent slik:

$chmod 744script.sh


Hvis du kunne legge merke til det, ville du komme til en erkjennelse av at vi har lagt til lese, skrive og utføre tall for eieren i det første sifferet som 4+2+1 = 7, og for gruppen og andre bruker vi lesesifret dvs. 4.

Kjør et Bash -skript

Nå har vi endelig nådd et merke hvor vi kan kjøre bash -skriptet. For å kjøre bash -skriptet ditt må du sørge for at du er i den nåværende arbeidskatalogen der skriptet ligger. Det er ikke obligatorisk, men på den måten er det enkelt da du ikke trenger å skrive hele banen. Når du har gjort det, fortsett nå og skriv i terminalen ./nameofscript.sh. I vårt tilfelle er navnet på skriptet ‘script.sh’, så vi ville skrive:

$./script.sh

3 Enkle eksempler på Bash Script

Hei LinuxHint
Først og fremst ville vi lage en bash -fil i den nåværende arbeidskatalogen:

$nanoF_script.sh


I filen må du skrive følgende:

#!/bin/bash
kastet ut 'Hei LinuxHint'


Når du har skrevet det, kan du prøve å trykke Ctrl+O for å skrive filendringer, og hvis du vil beholde navnet det samme treffet enter, ellers rediger navnet, og trykk deretter enter. Trykk nå Ctrl+X for å gå ut av nanoredigereren. Nå vil du se en fil som heter F_script.sh i din nåværende katalog.
For å kjøre denne filen kan du endre tillatelsene for å gjøre den kjørbar, eller du kan skrive:

$bashF_script.sh


Echo Command
Når vi snakker om ekkokommandoen, brukes den ganske enkelt til å skrive ut stort sett alt du vil skrive ut så lenge det er skrevet inne i anførselstegnene. Normalt når du kjører en ekkokommando uten flagg, forlater den en linje og skriver ut utskriften. For eksempel hvis vi har et skript:

#!/bin/bash
kastet ut 'Skriv ut på neste linje'

Etter at den er lagret, hvis vi kjører den:

$bashF_script.sh


Hvis vi bruker ‘-n’ flagget med ekko, skrives det ut på samme linje.

#!/bin/bash
kastet ut -n 'Skriv ut på samme linje'

Etter at den er lagret, hvis vi kjører den:

$bashF_script.sh


På samme måte, hvis vi bruker ‘ n’ eller ‘ t’ i de doble anførselstegnene, vil det skrive ut som det er.

#!/bin/bash
kastet ut ' nSkriv ut på tsamme linje n'


Men hvis vi bruker flagget ‘-e’, forsvinner det ikke bare, men det gjelder også n og t, og du kan se endringene i utdataene nedenfor:

#!/bin/bash
kastet ut -Og ' nSkriv ut på tsamme linje n'


Kommentarer i BASH
En kommentar er en linje som ikke betyr noe for datamaskinen. Uansett hva du skriver som en kommentar, oppheves eller ignoreres av datamaskinen og har ingen innvirkning på den skrevne koden. Kommentarer blir vanligvis sett på som en mer nyttig måte for en programmerer å forstå logikken i kode, slik at når han går tilbake til å omarbeide kodene, kan disse kommentarene minne ham om logikken og årsakene til at han har skrevet kode i en bestemt vei. Kommentarer kan også brukes av andre programmerere som ønsker å gjøre endringer i koden. Hvis du har skrevet en kodebit og du ikke vil fjerne den, men du vil se utgangen uten den spesifikke koden, kan du kommentere den spesifikke koden og fortsette og utføre. Programmet ditt vil fungere helt fint, vil gi deg gode resultater mens den ekstra koden fremdeles er tilstede i skriptet ditt, men det er ikke effektivt på grunn av kommentarer. Når du vil bruke denne koden igjen, fortsett og kommenter disse linjene, og du er god til å gå.
Det er to måter du kan skrive kommentarer på bash; den ene måten er å skrive kommentarer på en linje mens den andre måten brukes til å skrive kommentarer på flere linjer.

Enkeltlinjekommentarer
I kommentarer med én linje bruker vi et '#' -tegn som hjelper til med å kommentere hele linjen. Alt som er skrevet på linjen etterfulgt av ‘#’ vil bli sett på som en kommentar og ville ikke ha noen reell verdi når vi kjører skriptet. Denne enkeltlinjekommentaren kan brukes til å kommunisere logikken og forståelsen av koden til noen som har tilgang til koden.

#!/bin/bash
kastet ut -Og ' nSkriv ut på tsamme linje n'
#Dette skriptet hjelper oss å bruke /kombinasjonen av /n og /t



Kommentarer på flere linjer
La oss si at du vil kommentere hundre linjer i skriptet ditt. I så fall ville det være vanskelig for deg å bruke kommentarer med én linje. Du vil ikke kaste bort tiden din med å sette # på hver linje. Vi kan bruke ':' og deretter 'uansett kommentar'. Det ville hjelpe deg med å kommentere flere linjer ved bare å skrive inn 3 symboler som er praktiske og nyttige.

#!/bin/bash ’
: 'Dette er et skript som gjør det sikkert
at n og t fungerer og blir brukt
ien måte at vi har den nødvendige utgangen ’
kastet ut -Og ' nSkriv ut på tsamme linje n'



Ta en titt på 30 eksempler på Bash -skript på Linuxhint.com:

30 Bash Script -eksempler

6 Viktigste leksjoner i Bash Scripting

1. Betinget erklæring
Den betingede uttalelsen er et veldig nyttig verktøy i beslutningsprosesser. Det er mye brukt i programmeringsspråk. Oftere må vi ta beslutninger basert på visse forhold. Den betingede uttalelsen evaluerer den gitte tilstanden og tar avgjørelsen. I bash bruker vi også den betingede uttalelsen som alle andre programmeringsspråk. Syntaksen for å bruke den betingede setningen i bash er litt forskjellig fra de andre programmeringsspråkene. If-betingelsen er den mest brukte betingede setningen i bash og andre programmeringsspråk for generelle formål. If -tilstanden evaluerer den gitte tilstanden og tar avgjørelsen. Den gitte tilstanden kalles også et testuttrykk. Det er mange måter å bruke if -tilstanden på. If -tilstanden brukes med else -blokken. I tilfelle, hvis den gitte betingelsen er sann, blir setningene inne i if -blokken utført, ellers blir den andre blokken utført. Det er flere måter å bruke if condition -setningen i Bash som er følgende:

  1. If -uttalelsen
  2. Hvis ellers -uttalelsen
  3. Den nestede if -uttalelsen
  4. If elif -uttalelsen

If -uttalelsen
If -setningen evaluerer bare den gitte tilstanden, hvis den gitte betingelsen er sann, så blir setningene eller kommandoene inne i if -blokken utført, ellers avsluttes programmet. I bash, hvis tilstanden starter med if -søkeordet og slutter med fi -søkeordet. Det daværende søkeordet brukes til å definere blokken av setninger eller kommandoer som utføres når en bestemt betingelse er sann. La oss deklarere en variabel og bruke if -betingelsen for å evaluere verdien av variabelen om den er større enn 10 eller ikke. -Gt brukes til å evaluere tilstanden større enn, mens -lt brukes til å evaluere tilstanden mindre enn.

#!/bin/bash
HVOR=100
#deklarere if -tilstanden
hvis [ $ VAR -gt 10 ]
deretter
kastet ut 'De$ VARer større enn 10 '
#endring av if -tilstanden
være


Hvis ellers -uttalelsen
If else -setningen brukes også som en betinget uttalelse. Uttalelsene eller kommandoene etter if -betingelsen utføres hvis den gitte betingelsen er sann. Ellers utføres den andre blokken hvis den gitte betingelsen ikke er sann. Den andre blokken etterfølges av hvis -blokken og starter med annet -søkeordet.

#!/bin/bash
HVOR=7
#deklarere if -tilstanden
hvis [ $ VAR -gt 10 ]
deretter
kastet ut 'De$ VARer større enn 10 '
#deklarerer annet
ellers
kastet ut 'De$ VARer mindre enn 10 '
#endring av if -tilstanden
være


Flere forhold kan evalueres ved å bruke if -tilstanden. Vi kan bruke og og operatoren (&) og eller eller operatoren (II) til å evaluere flere forhold inne i en enkelt if -setning.

#!/bin/bash
HVOR=tjue
#deklarere if -tilstanden
hvis [[ $ VAR -gt 10 && $ VAR -lt 100 ]]
deretter
kastet ut 'De$ VARer større enn 10 og mindre enn 100 '
#deklarerer annet
ellers
kastet ut 'Betingelsen tilfredsstiller ikke'
#endring av if -tilstanden
være


Den nestede if -uttalelsen
I nestet if -setning har vi en if -setning inne i en if -setning. Den første hvis setningen evalueres, hvis den er sann, så den andre hvis setningen evalueres.

#!/bin/bash
HVOR=tjue
#deklarere if -tilstanden
hvis [[ $ VAR -gt 10 ]]
deretter
#hvis tilstand inne i en annen hvis konsisjon
hvis [ $ VAR -lt 100 ]
deretter
kastet ut 'De$ VARer større enn 10 og mindre enn 100 '
#deklarerer annet
ellers
kastet ut 'Betingelsen tilfredsstiller ikke'
#endring av if -tilstanden
være
ellers
kastet ut 'De$ VARer mindre enn 10 '
være


If elif -uttalelsen
If elif -setningen brukes til å evaluere flere forhold. Den første betingelsen starter med if -blokken og de andre betingelsene etterfølges av elif -søkeordet. La oss vurdere forrige eksempel på variabelnummer og implementere if elif -setningen i bash -skriptet vårt. Eq brukes som en lik operatør.

#!/bin/bash
HVOR=tjue
#deklarere if -tilstanden
hvis [[ $ VAR -ekv 1 ]]
deretter
kastet ut 'Den variable verdien er lik 1'
elif [[ $ VAR -ekv 2 ]]
deretter
kastet ut 'Den variable verdien er lik 2'
elif [[ $ VAR -ekv 3 ]]
deretter
kastet ut 'Den variable verdien er lik 2'
elif [[ $ VAR -gt 5 ]]
deretter
kastet ut 'Den variable verdien er større enn 5'
være


2. Looping
Loops er den viktigste og grunnleggende delen av ethvert programmeringsspråk. I motsetning til de andre programmeringsspråkene, brukes løkkene også i Bash for å utføre en oppgave gjentatte ganger til den gitte betingelsen er sann. Sløyfene er iterative, de er et flott verktøy for automatisering av lignende typer oppgaver. For -sløyfen, mens -sløyfen, og til sløyfen brukes i Bash.
La oss diskutere disse løkkene en etter en.

Mens loop
While -løkken utfører de samme utsagnene eller kommandoene gjentatte ganger. Den evaluerer tilstanden, og kjør setningene eller kommandoene til betingelsen er sann.
Dette er den grunnleggende syntaksen for å bruke en while -loop i Bash.

Mens [tilstand eller testuttrykk]
gjøre
uttalelser
gjort

La oss implementere mensløkken i script.sh -filen vår. Vi har en variabel VAR hvis verdi er lik null. I mens -løkken har vi satt en betingelse om at løkken skal løpe til verdien av VAR er mindre enn 20. Variabelverdien økes med 1 etter hver iterasjon. Så i dette tilfellet vil løkken begynne å utføre til variabelverdien er mindre enn 20.

#!/bin/bash
HVOR=0
samtidig som [ $ VAR -lt tjue ]
gjøre
kastet ut 'Den nåværende verdien av variabelen er$ VAR'
#øke verdien med 1 i VAR
HVOR= $((VAR +1))
gjort


For -løkken
For -løkken er den mest brukte løkken i hvert programmeringsspråk. Den brukes til å utføre den iterative oppgaven. Det er den beste måten å utføre repetitive oppgaver på. La oss deklarere for -løkken i script.sh -filen vår og bruke den til å utføre en repetitiv oppgave.

#!/bin/bash
HVOR=0
til (( Jeg==0; Jeg<tjue; jeg ++))
gjøre
kastet ut 'Hei og velkommen til Linuxhint'
#økning av variabelen i
Jeg= $((jeg+1))
gjort
kastet ut 'Dette er slutten på for loop'


Inntil sløyfen
Den andre typen sløyfe som brukes i Bash er til sløyfe. Det utfører eller utfører også det samme settet gjentatte ganger. Till -løkken evaluerer tilstanden og start utførelsen til den gitte tilstanden er usann. Til -løkken avsluttes når den gitte betingelsen er sann. Syntaksen til til -løkken er som følger:

inntil [tilstand]
gjøre
uttalelser
kommandoer
gjort

La oss implementere til -løkken i script.sh -filen vår. Till -løkken vil kjøre med mindre betingelsen er usann (verdien av variabelen er mindre enn 20)

#!/bin/bash
HVOR=0
før [ $ VAR -gt tjue ]
gjøre
kastet ut 'Hei og velkommen til Linuxhint'
#økning av variabelen i
HVOR= $((VAR +1))
gjort
kastet ut 'Dette er slutten på til sløyfe'


3. Lese av brukeren og skrive den på skjermen
Bash gir brukeren frihet til å angi en strengverdi eller data på terminalen. Brukeren som har angitt strengen eller data kan leses fra terminalen, den kan lagres i filen og kan skrives ut på terminalen. I Bash -filen kan input fra brukeren leses ved hjelp av lese søkeord, og vi lagrer det i en variabel. Det variable innholdet kan vises på terminalen ved hjelp av ekkokommandoen.

#!/bin/bash
kastet ut 'Skriv noe på terminalen'
#lagre den angitte verdien i VAR
leseHVOR
kastet ut 'Du kom inn:$ VAR'


Flere alternativer kan brukes med read -kommandoen. De mest brukte alternativene er -p og -s. -P viser ledeteksten og input kan tas i samme linje. –S tar inngangen i stille modus. Tegnene på inngangen vises på terminalen. Det er nyttig å legge inn sensitiv informasjon, dvs. passord.

#!/bin/bash
lese -s 'Skriv inn e -post:'e -post
kastet ut 'Oppgi passord'
lese -spassord


4. Lese og skrive tekstfiler
Tekstfiler er viktige komponenter for å lese og skrive dataene. Dataene lagres midlertidig i tekstfilene, og de kan enkelt leses fra tekstfilen. La oss først diskutere å skrive dataene inn i tekstfilen, og deretter vil vi diskutere å lese dataene fra tekstfilene.

Skrive tekstfilene
Dataene kan skrives inn i en fil på forskjellige måter:

  • Ved å bruke høyre vinkelbrakett eller større enn -tegnet (>)
  • Ved å bruke den dobbelte høyre vinkelbraketten (>>)
  • Ved å bruke tee -kommandoen

Høyre Angel Bracket Sign (>) for å skrive data
det er den mest brukte måten å skrive dataene inn i tekstfilen. Vi skriver dataene og setter deretter> -tegnet. > -Tegnet peker på tekstfilen der vi må lagre dataene. Imidlertid legger den ikke til filen, og tidligere data i filen er fullstendig erstattet av de nye dataene.

#!/bin/bash
#bruker angir tekstfilnavnet
lese -s 'Skriv inn filnavn:'FIL
#bruker legger inn dataene som skal lagres i tekstfilen
lese -s 'Skriv data for å legge inn i filen:'DATA
#lagre data i tekstfilen
#> peker på filnavnet.
kastet ut $ DATA > $ FIL


Høyre Angel Bracket Sign (>>) for å skrive data
>> brukes til å lagre utdataene fra en hvilken som helst kommando i filen. For eksempel viser kommandoen ls -al innholdet og tillatelsene til en fil i en bestemt katalog. >> lagrer utdataene i filen.

#!/bin/bash
#bruker angir tekstfilnavnet
lese -s 'Skriv inn filnavn:'FIL
#lagre kommandoutgangen i filen
ls -til >> $ FIL



Bruk tee -kommando til å skrive data i tekstfilen
Tee -kommandoen i Bash brukes til å skrive kommandoen til en tekstfil. Den skriver ut kommandoen på terminalen og lagrer den i tekstfilen.

#!/bin/bash
#bruker angir tekstfilnavnet
lese -s 'Skriv inn filnavn:'FIL
#lagre kommandoutgangen i filen ved hjelp av tee -kommandoen
ls -til | tee $ FIL


Tee -kommandoen overskriver de eksisterende dataene i filen som standard. Imidlertid kan -en opsjon med tee -kommandoen brukes til å legge til filen.

#!/bin/bash
#bruker angir tekstfilnavnet
lese -s 'Skriv inn filnavn:'FIL
#lagre kommandoutgangen i filen ved hjelp av tee -kommandoen
ls -til | tee -til $ FIL


Lese tekstfilene
De katt kommandoen brukes til å lese data fra filen. Det er den mest brukte for dette formålet. Det skriver ganske enkelt ut innholdet i tekstfilen på terminalen. La oss skrive ut innholdet eller dataene til filen på terminalen ved hjelp av katt kommando.

#!/bin/bash
#bruker angir tekstfilnavnet
lese -s 'Skriv inn filnavn:'FIL
#lese dataene fra tekstfilen
katt $ FIL


5. Kjører andre programmer fra bash
Bash gir fullmakt til å kjøre andre programmer fra Bash -skriptet. Vi bruker exec -kommandoen til å kjøre de andre programmene fra Bash. Exec -kommandoen erstatter den forrige prosessen med den nåværende prosessen og starter det nåværende programmet. For eksempel kan vi åpne nano-, gedit- eller vim -editoren fra bash -skriptet.

#!/bin/bash
#running nano editor fra Bash
eksek nano

#!/bin/bash
#running gedit fra Bash
eksekgedit

På samme måte kan vi også kjøre nettleserprogrammet fra Bash. La oss kjøre nettleseren Mozilla Firefox.

#!/bin/bash
#running firefox
eksekfirefox


Videre kan vi kjøre et hvilket som helst program fra Bash ved hjelp av exec -kommandoen.

6. Kommandolinjebehandling
Kommandolinjebehandlingen refererer til behandlingen av dataene som er lagt inn på terminalen. Kommandolinjedata behandles for mange formål, dvs. å lese brukerinndata, undervurdere kommandoene og lese argumentene. Tidligere har vi diskutert read -kommandoen. Lesekommandoen brukes også til kommandolinjebehandling. I denne delen vil vi diskutere behandlingen av kommandolinjeargumenter. I Bash kan vi behandle argumentene som sendes eller skrives på terminalen. Argumentene behandles på samme måte som de blir bestått. Derfor kalles det posisjonsparametere. I motsetning til andre programmeringsspråk starter indekseringen av argumentene i Bash med 1. Dollar -tegnet ($) brukes til å lese argumentene. For eksempel leser $ 1 det første argumentet, $ 2 leser det andre argumentet og så videre. Argumentene kan analyseres av forskjellige årsaker, for eksempel for å ta innspill fra brukeren.

#!/bin/bash
kastet ut 'Skriv inn navnet ditt'
#behandler det første argumentet
kastet ut 'Fornavn:' $ 1
#behandler det andre argumentet
kastet ut 'Mellomnavn:'$ 2
#behandler det tredje argumentet
kastet ut 'Etternavn:' $ 3
kastet ut 'Fullt navn:' $ 1 $ 2 $ 3


Å lese dataene fra terminalen ved å lese, og analysere argumentene er de mest passende eksemplene på kommandolinjebehandling.

Historien om Bash og sammenligning med andre skjell

Bash er nå den viktigste komponenten i UNIX- og Linux -baserte systemer. Bourne Shell ble opprinnelig utviklet av Stephen Bourne. Det tiltenkte formålet med Stephen Bourne -skallet var å overvinne begrensningene til de allerede eksisterende skjellene på den tiden. Før Bourne Shell introduserte UNIX Thompson Shell. Imidlertid var Thompson -skallet svært begrenset i bearbeiding av manus. Brukerne klarte ikke å kjøre en tilstrekkelig mengde av skriptet. For å overvinne alle disse begrensningene til Thompson -skallet, ble Bourne Shell introdusert. Den ble utviklet på Bells Lab. I 1989 revolusjonerte Brian Fox Bourne -skallet ved å legge til mange andre funksjoner og kalte det Bourne Again Shell (BASH).

Navnet på skallet År Plattform Beskrivelse Sammenligning med BASH
Thompson Shell 1971 UNIX Automatiseringen av manuset var begrenset. Brukeren kan bare gjøre en liten mengde skripting. BASH overvinner begrensningene i Thompson -skallet, og brukeren kan skrive de store skriptene.
Bourne Shell 1977 UNIX Det lar oss skrive og kjøre en enorm mengde skript. Bourne Shell gir ikke kommandoredigereren og et større antall snarveifasiliteter. BASH gir forbedringer i designet sammen med kommandoredigereren.
POSIX -skall 1992 POSIX POSIX -skallet er bærbart. Det gir mange snarveier og jobbkontroll. BASH er populær for å utføre de oppgavene som ikke krever portabilitet.
Z Shell 1990 UNIX Z-skallet er funksjonsrikt. Det er et veldig kraftig skall og tilbyr funksjoner som automatisk fullføring av kommandoer, stavekontroll og autofyll. BASH mangler noen av funksjonene som tilbys av Z Shell.

Konklusjon

BASH er et veldig kraftig verktøy som lar oss kjøre kommandoer og skript. Et BASH -skript lar oss automatisere de daglige oppgavene og kommandoene. Et BASH -skript er en kombinasjon av flere kommandoer. BASH -filen ender med .sh -utvidelsen. Før vi kjører BASH -skriptet, må vi oppdatere filtillatelsene, og vi må gi den kjørbare tillatelsen til .sh -filen. Denne artikkelen forklarer BASH og BASH scripting ved hjelp av enkle eksempler og viktige leksjoner. Videre beskriver den historien til BASH og sammenligner funksjonene med forskjellige andre kraftige skall.