Hva er et bashskript?

Hva er et bashskript?
Har du noen gang hørt faren din fortalt deg å ta et glass vann? Du har et valg om å si nei, men datamaskiner har ikke det valget. Datamaskiner skal gjøre akkurat det du vil fortelle dem å gjøre. Bash er bare et skall som lar deg kommunisere med datamaskinen og la deg gi instruksjoner til det. Et skript er i utgangspunktet bare et sett med instruksjoner gitt til datamaskinen for å utføre forskjellige meningsfulle oppgaver. Et skript hjelper deg å automatisere forskjellige oppgaver sammen med luksusen for å oppnå resultater raskere enn den normale prosedyren. Normalt, i terminalen, skriver du en grunnleggende eller forhåndsbasert 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 base -kommando utføres i terminalen, men for å utføre en kombinasjon av flere kommandoer samtidig, må du lage et bash -skript.

Hvorfor bash er nyttig og hvem det er nyttig for?

Hvis du vil ha mer kontroll over operativsystemet ditt og vil utføre forskjellige OS -relaterte oppgaver, er bash din vei å gå. Med bash refererer vi ikke bare til skriptspråket, men også til verktøyene som følger med Linux -operativsystem. Hvert eneste verktøy på Linux har sitt arbeid og utfører hver en annen oppgave individuelt. Bash er virkelig 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 virkelig er vanskelig å gjøre noe annet. 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 enklest måte å gjøre noe angående Linux OS er ved å bruke bash. For alle som vil utføre oppgaver som inkluderer Linux OS -verktøyene (for eksempel LS, CD, CAT, Touch, Grep, etc.), er det virkelig nyttig for ham/henne å lære bash i stedet for noe annet programmeringsspråk.

Hvordan bash sammenligner med andre programmeringsspråk?

Hvis vi snakker om bash, vet vi at bash ikke er et programmeringsspråk for generell formål, men en kommandolinjetolk. Bash er virkelig nyttig å utføre oppgaver rundt forskjellige verktøy og prosesser med muligheten til å kombinere forskjellige prosesser sammen og få alle til å jobbe mot et enkelt mål. Bash er veldig nyttig når det gjelder å håndtere og manipulere inngangene og utgangene, noe som er en veldig vanskelig ting å gjøre i andre generelle programmeringsspråk som Python, C, etc. Når det gjelder datastrukturer og komplekse oppgaver som å manipulere komplekse data, kan ikke Bash ikke håndtere slike oppgaver, og vi må se mot programmeringsspråk som Python, Perl, C, etc. På 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 for å kjøre verktøyene eller slå sammen verktøyene 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 å drive raketten og hjelpe deg med å sette retning og hjelpe deg med å lande den til månen eller Mars.

Hvordan lage og kjøre bashskript?

For å lage et bash -skript, må du først opprette en tekstfil med utvidelsen av .SH på slutten av filnavnet. Du kan opprette bashskriptfilen ved hjelp av terminalen.

$ berøringsskript.sh


Etter å ha skrevet inn kommandoen ovenfor, treffer du Enter -tasten, og du vil ha en bash -skriptfil opprettet i din nåværende arbeidskatalog. Men det er ikke det, vi har laget 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 -redaktør eller GEDIT og på den aller første linjetypen i:

#!/bin/bash


Dette er en standard førstelinje for hver bash-skriptfil som hjelper den til å bli gjenkjent som et bash-skript. Noe skript som ikke har #!/bin/bash i første linje ville ikke bli betraktet som et bash -manus, så husk å legge denne linjen til toppen av hvert skript. Når du har lagt til denne linjen, kan du nå begynne å skrive inn i manuset. For eksempel ville jeg skrevet her en enkel ekkokommando:

$ ekko "Dette er Linuxhint, beste læringsplattform for bash"


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

$ ls -al


Du kan se 'skript.sh 'skrevet i hvit farge, som er et tegn på at skriptet er en ikke-utførbar fil som kjørbare filer er vanligvis i grønn farge. Se videre 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.

2. del som inneholder 'R' er tillatelsen for gruppen vi har flere brukere.

Mens den tredje delen som inneholder 'R' er tillatelse til publikum, noe som betyr at hvem som helst kan ha disse tillatelsene til den nevnte filen.

'R' står for lesetillatelser, 'W' står for skrivetillatelser, 'X' står for kjørbare tillatelser. Vi ser tydeligvis ikke x mot 'skript.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 -skript.sh


Imidlertid er dette ikke den mest effektive måten å gi kjørbare tillatelser, da det gir kjørbare tillatelser ikke bare til eieren, men til gruppen og publikum også som vi absolutt ikke ønsker av sikkerhetsmessige årsaker. 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
Skriv = 2
Utfør = 1
Tillatelsesnumre vil være i tre sifre etter CHMOD -kommandoen og hvert siffer representerer tillatelsene til eieren, gruppen og andre (offentlig). For eksempel å lese, skrive og utføre tillatelser til eieren og lese tillatelser til gruppen og andre ville være noe slikt:

$ chmod 744 manus.sh


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

Kjør et bashskript

Nå har vi endelig nådd et merke hvor vi kan kjøre bashskriptet. For å kjøre Bash -skriptet, må du sørge for at du er i den nåværende arbeidskatalogen der skriptet ditt ligger. Det er ikke obligatorisk, men på den måten er det enkelt, da du ikke trenger å skrive hele veien. Når du har gjort det, kan du nå gå videre og skrive i terminalen din "./nameofscript.sh ”. I vårt tilfelle er navnet på skriptet 'skript.sh ', så vi ville skrevet:

$ ./manus.sh

3 enkle eksempler på bashskript

Hei Linuxhint
Først av alt vil vi opprette en bash -fil i den nåværende arbeidskatalogen:

$ nano f_script.sh


Inne i filen må du skrive følgende:

#!/bin/bash
ekko "Hei Linuxhint"


Når du har skrevet det, kan du nå prøve å trykke på Ctrl+O for å skrive filendringer, så hvis du vil holde navnet den samme hit Enter, ellers rediger navnet, og deretter treff Enter. Trykk nå Ctrl+X for å avslutte Nano -redaktøren. 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øres, eller du kan skrive:

$ BASH F_SCRIPT.sh


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

#!/bin/bash
ekko "trykk på neste linje"

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

$ BASH F_SCRIPT.sh


Hvis vi bruker '-N' -flagget med Echo, skriver det ut på samme linje.

#!/bin/bash
ekko -n "Skriv ut på samme linje"

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

$ BASH F_SCRIPT.sh


Tilsvarende, hvis vi bruker '\ n' eller '\ t' i de doble sitatene, ville det trykke som det er.

#!/bin/bash
ekko "\ nprint on \ t den samme linjen \ n"


Imidlertid, hvis vi bruker flagget '-e', forsvinner det ikke bare, men det bruker også \ n og \ t, og du kan se endringene i utgangen nedenfor:

#!/bin/bash
ekko -e "\ nprint on \ t den samme linjen \ n"


Kommentarer i bash
En kommentar er en linje som ikke betyr noe for datamaskinen. Uansett hva du skriver som en kommentar blir ugyldig eller ignorert av datamaskinen og har ingen innvirkning i det hele tatt på den skriftlige koden. Kommentarer anses vanligvis som mer av en nyttig måte for en programmerer å forstå kodelogikken, slik at når han går tilbake for å omarbeide kodestykkene, kan disse kommentarene minne om ham logikken og grunnene til at han har skrevet kode i en spesifikk vei. Kommentarer kan også brukes av andre programmerere som kanskje vil gjøre endringer i koden. Hvis du har skrevet et stykke kode og ikke vil fjerne det, men du vil se utdataene uten det spesifikke kodestykket, kan du kommentere det spesifikke kodestykket og gå foran og utføre. Programmet ditt vil gå helt fint, vil gi deg gode resultater mens den ekstra koden fremdeles er til stede i skriptet ditt, men det er ikke-effektivt på grunn av kommentarer. Når du vil bruke det kodestykket igjen, gå foran og ukommsomme disse linjene, og du er god til å gå.
Det er to måter du kan skrive kommentarer i bash; En måte er å skrive kommentarer med enkeltlinjer, mens den andre veien brukes til å skrive multi-linjekommentarer.

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

#!/bin/bash
ekko -e "\ nprint on \ t den samme linjen \ n"
#Dette skriptet hjelper oss å bruke /kombinasjonen av /n og /t



Multi Line -kommentarer
La oss si at du vil kommentere hundre linjer i skriptet ditt. I så fall vil det være vanskelig for deg å bruke en-line kommentarer. Du vil ikke kaste bort tiden din på å sette # på hver linje. Vi kan bruke ':' og deretter 'Uansett kommentarer'. Det vil hjelpe deg å kommentere flere linjer ved bare å skrive inn 3 symboler som er nyttige og nyttige.

#!/bin/bash '
: 'Dette er manus som sørger for
at \ n og \ t fungerer og blir brukt
på en måte som vi har den nødvendige output '
ekko -e "\ nprint on \ t den samme linjen \ n"



Ta en titt på 30 eksempler på bash -skript på Linuxhint.com:
https: // linuxhint.com/30_bash_script_examples/

6 viktigste leksjoner i bashskripting

1. Betinget uttalelse
Den betingede uttalelsen er et veldig nyttig verktøy i beslutningen. Det er mye brukt på 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 ved å bruke den betingede uttalelsen i bash er litt forskjellig fra de andre programmeringsspråk. IF-tilstanden er den mest brukte betingede uttalelsen i bash og andre generelle programmeringsspråk. 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 i bash. IF -tilstanden brukes med ellers blokkering. I tilfelle, hvis den gitte tilstanden er sann, blir utsagnene i IF -blokken utført, ellers utføres den andre blokken. Det er flere måter å bruke IF -tilstandsuttalelsen i bash som er følgende:

  1. IF -uttalelsen
  2. IF ellers uttalelse
  3. Den nestede IF -uttalelsen
  4. IF ELIF -uttalelsen

IF -uttalelsen
IF -uttalelsen evaluerer bare den gitte tilstanden, hvis den gitte tilstanden er sann, så blir utsagnene eller kommandoene i IF -blokken utført, ellers blir programmet avsluttet. I bash, hvis tilstanden starter med IF -nøkkelordet og slutter med FI -nøkkelordet. Det daværende nøkkelordet brukes til å definere blokkeringen av utsagn eller kommandoer som utføres når en viss tilstand er sann. La oss erklære en variabel og bruke IF -tilstanden til å evaluere verdien av variabelen om den er større enn 10 eller ikke. -GT brukes til å evaluere det større enn tilstanden, mens -lt brukes til å evaluere den mindre enn tilstanden.

#!/bin/bash
Var = 100
#Declaring the IF -tilstanden
if [$ var -gt 10]
deretter
ekko "$ var er større enn 10"
#ending if -tilstanden
fi


IF ellers uttalelse
IF ellers uttalelse brukes også som en betinget uttalelse. Uttalelsene eller kommandoene etter IF -tilstanden er utført hvis den gitte tilstanden er sann. Ellers utføres den andre blokken hvis den gitte tilstanden ikke er sann. Annets blokkering blir fulgt av IF -blokken og starter med annet nøkkelord.

#!/bin/bash
Var = 7
#Declaring the IF -tilstanden
if [$ var -gt 10]
deretter
ekko "$ var er større enn 10"
#Declaring Else Block
ellers
ekko "$ var er mindre enn 10"
#ending if -tilstanden
fi


Flere forhold kan evalueres ved å bruke IF -tilstanden. Vi kan bruke og operatør (&) og eller operatør (ii) for å evaluere flere forhold i en enkelt IF -uttalelse.

#!/bin/bash
Var = 20
#Declaring the IF -tilstanden
if [[$ var -gt 10 && $ var -lt 100]]
deretter
ekko "$ var er større enn 10 og mindre enn 100"
#Declaring Else Block
ellers
ekko "Tilstanden tilfredsstiller ikke"
#ending if -tilstanden
fi


Den nestede IF -uttalelsen
I nestet IF -uttalelse har vi en IF -uttalelse i en IF -uttalelse. Den første IF -uttalelsen blir evaluert, hvis det er sant, så den andre IF -uttalelsen blir evaluert.

#!/bin/bash
Var = 20
#Declaring the IF -tilstanden
if [[$ var -gt 10]]
deretter
#if tilstand i en annen hvis konsisjon
if [$ var -lt 100]
deretter
ekko "$ var er større enn 10 og mindre enn 100"
#Declaring Else Block
ellers
ekko "Tilstanden tilfredsstiller ikke"
#ending if -tilstanden
fi
ellers
ekko "$ var er mindre enn 10"
fi


IF ELIF -uttalelsen
IF ELIF -setningen brukes til å evaluere flere forhold. Den første tilstanden starter med IF -blokken og de andre forholdene blir fulgt av ELIF -nøkkelordet. La oss vurdere det forrige eksemplet på variabelt nummer og implementere IF ELIF -setningen i vårt bash -skript. EQ brukes som en lik operatør.

#!/bin/bash
Var = 20
#Declaring the IF -tilstanden
if [[$ var -eq 1]]
deretter
ekko "Den variable verdien er lik 1"
elif [[$ var -eq 2]]
deretter
ekko "Den variable verdien er lik 2"
elif [[$ var -eq 3]]
deretter
ekko "Den variable verdien er lik 2"
elif [[$ var -gt 5]]
deretter
ekko "Den variable verdien er større enn 5"
fi


2. Looping
Løkker er den essensielle 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 tilstanden er sann. Løkkene er iterative, de er et flott verktøy for automatisering av lignende typer oppgaver. For sløyfen, mens du er sløyfe, og til sløyfe brukes i bash.
La oss diskutere disse løkkene en etter en.

Mens sløyfen
Mens Loop utfører de samme uttalelsene eller kommandoene gjentatte ganger. Den evaluerer tilstanden, og kjører uttalelsene eller kommandoene til tilstanden er sann.
Dette er den grunnleggende syntaksen ved å bruke en stundsløyfe i bash.

Mens [tilstand eller testuttrykk]
gjøre
uttalelser
Ferdig

La oss implementere mens Loop i skriptet vårt.SH -fil. Vi har en variabel var hvis verdi er lik null. I den mens loopen har vi satt en tilstand, at sløyfen skal kjøre til verdien av VaR er mindre enn 20. Variabel verdi økes med 1 etter hver iterasjon. Så i dette tilfellet vil sløyfen begynne å utføre til den variable verdien er mindre enn 20.

#!/bin/bash
Var = 0
mens [$ var -Lt 20]
gjøre
ekko "Den nåværende verdien av variabel er $ var"
#incrementing av verdien med 1 i var
Var = $ ((var+1))
Ferdig


For loop
For -loopen er den mest brukte sløyfen på hvert programmeringsspråk. Den brukes til å utføre den iterative oppgaven. Det er den beste måten å utføre repeterende oppgaver. La oss erklære for Loop i skriptet vårt.SH -filen og bruk den til å utføre en repeterende oppgave.

#!/bin/bash
Var = 0
for ((i == 0; i<20; i++ ))
gjøre
ekko "Hei og velkommen til Linuxhint"
#incrementing av variabelen i
i = $ ((i+1))
Ferdig
ekko "Dette er slutten på for loop"


Til sløyfen
Den andre typen sløyfe som brukes i bash er til loop. Den utfører eller utfører også det samme settet med gjentatte ganger. Til sløyfen evaluerer tilstanden og begynner å utføre til den gitte tilstanden er falsk. Til sløyfen avsluttes når den gitte tilstanden er sann. Syntaksen til til Loop er som følger:

til [tilstand]
gjøre
uttalelser
kommandoer
Ferdig

La oss implementere til Loop i skriptet vårt.SH -fil. Til Loop vil løpe med mindre tilstanden er falsk (verdien av variabelen er mindre enn 20)

#!/bin/bash
Var = 0
til [$ var -GT 20]
gjøre
ekko "Hei og velkommen til Linuxhint"
#incrementing av variabelen i
Var = $ ((var+1))
Ferdig
ekko "Dette er slutten på til sløyfe"


3. Lesing fra brukeren og skriver det på skjermen
Bashen gir brukeren til brukeren å oppgi noen strengverdi eller data på terminalen. Brukeren som er angitt i streng eller data kan leses fra terminalen, den kan lagres i filen, og kan skrives ut på terminalen. I bash -filen kan inngangen fra brukeren leses ved hjelp av lese nøkkelord og vi lagrer det i en variabel. Variabelt innhold kan vises på terminalen ved å bruke Echo -kommandoen.

#!/bin/bash
ekko "Skriv noe på terminalen"
#Storing av den angitte verdien i var
Les var
ekko "Du skrev inn: $ var"


Flere alternativer kan brukes med lesekommandoen. De mest brukte alternativene er -p og -s. -P -viser ledeteksten og inngangen kan tas på samme linje. -S tar inngangen i stille modus. Tegnene til inngangen vises på terminalen. Det er nyttig å legge inn litt sensitiv informasjon i.e. Passord.

#!/bin/bash
Les -P "Skriv inn e -post:" E -post
ekko "Skriv inn passord"
Les -s passord


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

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

  • Ved å bruke riktig vinkelbrakett eller større enn tegnet (>)
  • Ved å bruke dobbelthøyde vinkelbraketten (>>)
  • Ved å bruke tee -kommandoen

Right Angel Bracket Sign (>) for å skrive data
Det er den mest brukte måten å skrive dataene i tekstfilen. Vi skriver dataene og legger deretter> tegnet. > -Tegnet peker på tekstfilen der vi må lagre dataene. Den legger imidlertid ikke filen, og tidligere data fra filen erstattes fullstendig av de nye dataene.

#!/bin/bash
#bruker skriver inn tekstfilnavnet
Les -P "Skriv inn filnavn:" Fil
#bruker legger inn dataene som skal lagres i tekstfilen
Les -P "Skriv data for å legge inn fil:" Data
#Lagring av data i tekstfilen
#> peker på filnavnet.
ekko $ data> $ fil


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

#!/bin/bash
#bruker skriver inn tekstfilnavnet
Les -P "Skriv inn filnavn:" Fil
#Storing av kommandoutgangen i filen
ls -al >> $ fil



Bruke tee -kommando for å skrive data i tekstfilen
Tee -kommandoen i bash brukes til å skrive output fra kommandoen til en tekstfil. Den skriver ut output fra kommandoen på terminalen og samt lagrer den i tekstfilen.

#!/bin/bash
#bruker skriver inn tekstfilnavnet
Les -P "Skriv inn filnavn:" Fil
#Stroring av kommandoutgangen i filen ved hjelp av tee -kommandoen
ls -al | tee $ fil


Tee -kommandoen overskriver de eksisterende dataene til filen som standard. Imidlertid kan -et alternativ med tee -kommandoen brukes til å legge til filen.

#!/bin/bash
#bruker skriver inn tekstfilnavnet
Les -P "Skriv inn filnavn:" Fil
#Stroring av kommandoutgangen i filen ved hjelp av tee -kommandoen
ls -al | tee -a $ fil


Lese tekstfilene
De katt Kommando brukes til å lese data fra filen. Det er det 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 å bruke katt kommando.

#!/bin/bash
#bruker skriver inn tekstfilnavnet
Les -P "Skriv inn filnavn:" Fil
#Reading av dataene fra tekstfilen
Cat $ -fil


5. Kjører andre programmer fra bash
Bashen gir myndighet til å kjøre andre programmer fra bash -skriptet. Vi bruker Exec -kommandoen for å kjøre de andre programmene fra bash. Exec -kommandoen erstatter den forrige prosessen med den nåværende prosessen og lanserer det nåværende programmet. For eksempel kan vi åpne Nano, Gedit eller Vim Editor fra bash -skriptet.

#!/bin/bash
#Running Nano Editor fra Bash
Exec Nano
#!/bin/bash
#running gedit fra bash
Exec Gedit

Tilsvarende kan vi også kjøre nettleserapplikasjonen fra bash. La oss kjøre Mozilla Firefox -nettleseren.

#!/bin/bash
#Running Firefox
Exec Firefox


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. Kommandolinjedataene blir behandlet for mange formål i.e. Leser brukerinndata, undervurderer kommandoene og leser argumentene. Tidligere har vi diskutert lesekommandoen. Les-kommandoen brukes også til kommandolinjebehandling. I dette avsnittet vil vi diskutere behandlingen av kommandolinjeargumenter. I bash kan vi behandle argumentene som er bestått eller skrevet 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. Dollarskiltet ($) 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 grunner som å ta innspill fra brukeren.

#!/bin/bash
ekko "Skriv inn navnet ditt"
#prosessering av det første argumentet
ekko "Fornavn:" $ 1
#prosessering av det andre argumentet
ekko "mellomnavn:" $ 2
#prosessering av det tredje argumentet
ekko "etternavn:" $ 3
ekko "Fullt navn:" $ 1 $ 2 $ 3


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

Historien om bash og sammenligning med andre skjell

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

Navn på skallet År Plattform Beskrivelse Sammenligning med bash
Thompson Shell 1971 Unix Automatiseringen av skriptet var begrenset. Brukeren kan bare gjøre en liten mengde skripting. Bashen overvinner begrensningene til Thompson Shell, 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 snarveisanlegg. Bashen gir forbedringer i designen sammen med kommandoredigereren.
Posix Shell 1992 Posix Posix -skallet er bærbart. Det gir mange snarveier og jobbkontroll. Bashen er populær for å utføre de oppgavene som ikke krever portabilitet.
Z skall 1990 Unix Z-skallet er funksjonsrik. Det er et veldig kraftig skall og gir funksjoner som kommando auto-fullføring, stavekorreksjon og autofill. Basen mangler noen av funksjonene som er levert av Z -skallet.

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 bashskript er en kombinasjon av flere kommandoer. Bashilen ender med .SH -forlengelse. Før vi kjører Bash -skriptet, må vi oppdatere filtillatelsene, og vi må gi den kjørbare tillatelsen til .SH -fil. Denne artikkelen forklarer bash og bash -skripting ved hjelp av enkle eksempler og viktige leksjoner. Dessuten beskriver den bashens historie og sammenligner funksjonene med forskjellige andre kraftige skjell.