Hvad er et Bash -script?

What Is Bash Script



Har du nogensinde hørt din far fortælle dig at tage et glas vand? Du har et valg om at sige Nej, men computere har ikke det valg. Computere vil gøre præcis, hvad du ville fortælle dem at gøre. Bash er bare en skal, der giver dig mulighed for at kommunikere med computeren og give dig mulighed for at give instruktioner til den. Et script er dybest set bare et sæt instruktioner givet til computeren for at udføre forskellige meningsfulde opgaver. Et script hjælper dig med at automatisere forskellige opgaver sammen med luksusen for at opnå resultater hurtigere end den normale procedure. Normalt skriver du i terminalen en grundlæggende eller forhåndsbash -kommando, og den udføres med det samme. I bash -scripts kan du give flere instruktioner eller kommandoer på én gang, og computeren ville kun udføre dem alle, når du ville udføre scriptet. I en nøddeskal kan enkelt bash -kommando udføres i terminalen, men for at udføre en kombination af flere kommandoer på én gang skal du oprette et bash -script.

Hvorfor bash er nyttig, og hvem er det nyttigt for?

Hvis du vil have mere kontrol over dit operativsystem og vil udføre forskellige OS -relaterede opgaver, er bash din vej at gå. Ved bash henviser vi ikke kun til scriptsproget, men også til de værktøjer, der følger med Linux -operativsystemet. Hvert enkelt værktøj på Linux har sit arbejde, og hver udfører en anden opgave individuelt. Bash er virkelig nyttig, når du har brug for at kombinere alle disse værktøjer og kæde dem sammen på en sådan måde, at de alle arbejder i harmoni for at udføre en opgave, der virkelig er vanskelig at udføre på anden måde. For eksempel kan alt, der har noget at gøre med Linux OS, også gøres på andre programmeringssprog som Python eller Perl, men det er meget svært at udføre forskellige OS-relaterede opgaver. En enkel, sort / hvid og nemmeste måde at gøre noget ved Linux OS er ved at bruge bash. For alle, der ønsker at udføre opgaver, der inkluderer Linux OS -værktøjer (f.eks. Ls, cd, cat, touch, grep osv.), Er det virkelig nyttigt for ham/hende at lære bash i stedet for ethvert andet programmeringssprog.







Hvordan sammenligner Bash sig med andre programmeringssprog?

Hvis vi taler om bash, ved vi, at bash ikke er et generelt programmeringssprog, men en kommandolinjetolker. Bash er virkelig nyttig til at udføre opgaver omkring forskellige værktøjer og processer med evnen til at kombinere forskellige processer sammen og få dem alle til at arbejde hen imod et enkelt mål. Bash er virkelig praktisk, når det kommer til at håndtere og manipulere input og output, hvilket er en virkelig vanskelig ting at gøre i andre programmeringssprog til almindelige formål, såsom python, C osv. Men når det kommer til datastrukturer og komplekse opgaver som f.eks. som manipulation af komplekse data kan bash ikke håndtere sådanne opgaver, og vi er nødt til at se mod programmeringssprog som Python, Perl, C osv. I programmeringssprog kan du bygge software eller et værktøj, men du kan ikke bygge et af dem i bash. Du kan dog bruge bash til at køre værktøjerne eller flette disse værktøjer sammen for at køre effektivt. Det er som at bygge en raket, hvis vi overvejer denne metafor, vil programmeringssprog hjælpe dig med at bygge raketten, mens bash hjælper dig med at køre raketten og hjælper dig med at indstille dens retning og hjælpe dig med at lande den til månen eller mars.



Sådan oprettes og køres Bash -scripts?

For at oprette et bash -script skal du først oprette en tekstfil med filtypen .sh i slutningen af ​​filnavnet. Du kan oprette bash -scriptfilen ved hjælp af terminalen.



$røre vedscript.sh


Efter at have indtastet ovenstående kommando, skal du trykke på enter -tasten, og du vil få oprettet en bash scripting -fil i din nuværende arbejdskatalog. Men det er ikke det, vi har oprettet scriptfilen, men vi skal udføre visse handlinger for at fuldføre scriptet og køre det. Først og fremmest skal du åbne scriptfilen i en nano -editor eller gedit og skrive på den allerførste linje:





#!/bin/bash


Dette er en standard første linje for hver bash scripting fil, som hjælper den med at blive genkendt som et bash script. Ethvert script, der ikke har #!/Bin/bash i den første linje, betragtes ikke som et bash -script, så sørg for at tilføje denne linje øverst i hvert script. Når du har tilføjet denne linje, kan du nu begynde at skrive til scriptet. For eksempel vil jeg skrive her en simpel ekkokommando:

$smed udDette er LinuxHint, bedste læringsplatformtilBash


Når du har skrevet denne kommando, kan du nu gemme den og gå tilbage til din terminal. Skriv i din terminal:



$ls -til


Du kan se 'script.sh' skrevet i hvid farve, hvilket er et tegn på, at scriptet er en ikke-eksekverbar fil, da eksekverbare filer normalt er i grøn farve. Tag et kig på venstre side, hvor vi kunne se et mønster som -rw -r – r–, der afspejler, at filen kun er læsbar og skrivbar.
Den første del, der indeholder 'rw', er tilladelser for ejeren sandsynligvis den nuværende bruger.

2. del, der indeholder ‘r’, er tilladelsen til den gruppe, hvor vi har flere brugere.

Mens den tredje del, der indeholder ‘r’, er tilladelse for offentligheden, hvilket betyder, at alle kan have disse tilladelser til den nævnte fil.

'R' står for læsetilladelser, 'w' står for skrivetilladelser, 'x' står for eksekverbare tilladelser. Det er klart, at vi ikke ser x mod 'script.sh'. For at tilføje eksekverbare tilladelser er der to måder at gøre det på.

Metode 1

I denne metode kunne du skrive en simpel chmod -kommando med ‘+x’, og det ville tilføje de eksekverbare tilladelser.

$chmod+ x script.sh


Dette er imidlertid ikke den mest effektive måde at give eksekverbare tilladelser, da det giver eksekverbare tilladelser ikke kun til ejeren, men også til gruppen og offentligheden, som vi bestemt ikke ønsker af sikkerhedsmæssige årsager. Tag et kig:

Metode 2

I denne metode kan du bruge tal til at diktere tilladelser for en fil. Inden vi hopper ind i det, vil jeg gerne give dig en kort idé om, hvad disse tal betyder, og hvordan du kan bruge dem til at manipulere tilladelser.
læs = 4
skrive = 2
udføre = 1
Tilladelsesnumre vil være i tre cifre efter kommandoen chmod, og hvert ciffer repræsenterer tilladelser for ejeren, gruppen og andre (offentlige). For eksempel vil det give noget i retning af at give tilladelse til at læse, skrive og udføre tilladelser til ejeren og læse tilladelser til gruppen og andre:

$chmod 744script.sh


Hvis du kunne bemærke det, ville du komme til en erkendelse af, at vi har tilføjet læse-, skrive- og eksekveringsnumre for ejeren i det første ciffer som 4+2+1 = 7, og for gruppen og andre bruger vi cifret læs dvs. 4.

Kør et Bash -script

Nu har vi endelig nået et mærke, hvor vi kan køre bash -scriptet. For at køre dit bash -script skal du sørge for, at du er i den nuværende arbejdskatalog, hvor dit script er placeret. Det er ikke obligatorisk, men på den måde er det let, da du ikke behøver at skrive hele stien. Når du har gjort det, skal du nu gå videre og skrive i din terminal ./nameofscript.sh. I vores tilfælde er scriptets navn 'script.sh', så vi ville skrive:

$./script.sh

3 enkle eksempler på Bash Script

Hej LinuxHint
Først og fremmest ville vi oprette en bash -fil i det nuværende arbejdskatalog:

$nanoF_script.sh


Inde i filen skal du skrive følgende:

#!/bin/bash
smed ud 'Hej LinuxHint'


Når du har skrevet det, skal du nu prøve at trykke på Ctrl+O for at skrive filændringer, så hvis du vil beholde navnet det samme hit enter, ellers rediger navnet, og tryk derefter på enter. Tryk nu på Ctrl+X for at afslutte nano -editoren. Nu ville du se en fil med navnet F_script.sh i din nuværende bibliotek.
For at køre denne fil kan du ændre dens tilladelser for at gøre den eksekverbar, eller du kan skrive:

$bashF_script.sh


Ekkokommando
Når vi taler om ekkokommandoen, bruges den simpelthen til at udskrive stort set alt, hvad du vil udskrive, så længe det er skrevet inde i anførselstegnene. Normalt når du kører en ekkokommando uden flag, forlader den en linje og udskriver derefter output. For eksempel, hvis vi har et script:

#!/bin/bash
smed ud 'Udskriv på næste linje'

Når det er gemt, hvis vi kører det:

$bashF_script.sh


Hvis vi bruger ‘-n’ -flaget med ekko, udskrives det på samme linje.

#!/bin/bash
smed ud -n 'Udskriv på samme linje'

Når det er gemt, hvis vi kører det:

$bashF_script.sh


På samme måde, hvis vi bruger ‘ n’ eller ‘ t’ inden for de dobbelte anførselstegn, ville det blive udskrives som det er.

#!/bin/bash
smed ud ' nUdskriv på tsamme linje n'


Men hvis vi bruger flaget ‘-e’, går det hele ikke bare væk, men det anvender også n og t, og du kan se ændringerne i output herunder:

#!/bin/bash
smed ud -Og ' nUdskriv på tsamme linje n'


Kommentarer i BASH
En kommentar er en linje, der ikke betyder noget for computeren. Uanset hvad du skriver som en kommentar, annulleres eller ignoreres det af computeren og har overhovedet ingen indflydelse på den skrevne kode. Kommentarer betragtes normalt som en mere nyttig måde for en programmør at forstå kodens logik, så når han går tilbage til at omarbejde kodestykker, kan disse kommentarer minde om ham logikken og årsagerne til, at han har skrevet kode i en bestemt vej. Kommentarer kan også bruges af andre programmører, der måske vil foretage ændringer i koden. Hvis du har skrevet et stykke kode, og du ikke vil fjerne det, men du vil se output uden det specifikke stykke kode, kan du kommentere det specifikke stykke kode og fortsætte og udføre. Dit program vil køre fint, ville give dig gode resultater, mens den ekstra kode stadig er til stede i dit script, men det er ikke effektivt på grund af kommentarer. Når du vil bruge det stykke kode igen, skal du fortsætte og kommentere disse linjer, og du er god til at gå.
Der er to måder, du kan skrive kommentarer på bash; den ene måde er at skrive kommentarer med en enkelt linje, mens den anden måde bruges til at skrive kommentarer med flere linjer.

Single Line Kommentarer
I kommentarer med en linje bruger vi et '#' -tegn, der hjælper med at kommentere hele linjen. Alt skrevet på linjen efterfulgt af '#' vil blive betragtet som en kommentar og ville ikke have nogen reel værdi, når vi udfører scriptet. Denne kommentar med en enkelt linje kan bruges til at kommunikere logikken og forståelsen af ​​koden til en person, der har adgang til koden.

#!/bin/bash
smed ud -Og ' nUdskriv på tsamme linje n'
#Dette script hjælper os med at anvende /kombinationen af ​​/n og /t



Multi Line Kommentarer
Lad os sige, at du vil kommentere hundrede linjer i dit script. I så fald ville det være svært for dig at bruge kommentarer med en linje. Du vil ikke spilde din tid på at sætte # på hver linje. Vi kan bruge ':' og derefter 'uanset kommentarer'. Det ville hjælpe dig med at kommentere flere linjer ved blot at indtaste 3 symboler, som er praktiske og nyttige.

#!/bin/bash ’
: 'Dette er script, der sørger for
at n og t virker og bliver anvendt
ien måde, hvorpå vi har det nødvendige output '
smed ud -Og ' nUdskriv på tsamme linje n'



Tag et kig på 30 eksempler på Bash -scripts på Linuxhint.com:

30 Bash Script -eksempler

6 Vigtigste lektioner i Bash Scripting

1. Betinget erklæring
Den betingede erklæring er et meget nyttigt værktøj til beslutningstagning. Det bruges meget i programmeringssprog. Oftere er vi nødt til at træffe beslutninger baseret på visse betingelser. Den betingede erklæring evaluerer den givne tilstand og tager beslutningen. I bash bruger vi også den betingede erklæring som ethvert andet programmeringssprog. Syntaksen for at bruge den betingede sætning i bash er en smule forskellig fra de andre programmeringssprog. If-betingelsen er den mest almindeligt anvendte betingede sætning i bash og andre programmeringssprog til generelle formål. If -tilstanden evaluerer den givne tilstand og træffer beslutningen. Den givne tilstand kaldes også et testudtryk. Der er mange måder at bruge if -tilstanden på i bash. If -tilstanden bruges sammen med else -blokken. Hvis den givne betingelse er sand, udføres sætningerne inde i if -blokken, ellers udføres den anden blok. Der er flere måder at bruge if condition -sætningen på i Bash, som er følgende:

  1. If -sætningen
  2. Erklæringen om ellers
  3. Den indlejrede if -erklæring
  4. If elif -erklæringen

If -sætningen
If -sætningen evaluerer kun den givne betingelse, hvis den givne betingelse er sand, så udføres sætningerne eller kommandoerne inde i if -blokken, ellers afsluttes programmet. I bash, hvis betingelsen starter med if -søgeordet og ender med fi -søgeordet. Det daværende søgeord bruges til at definere blokken af ​​udsagn eller kommandoer, der udføres, når en bestemt betingelse er sand. Lad os erklære en variabel og bruge if -betingelsen til at evaluere værdien af ​​variablen, uanset om den er større end 10 eller ej. -Gt bruges til at evaluere tilstanden større end, mens -lt bruges til at evaluere tilstanden mindre end.

#!/bin/bash
HVOR=100
#deklarerer if -tilstanden
hvis [ $ VAR -gt 10 ]
derefter
smed ud 'Det$ VARer større end 10 '
#afslutter if -tilstanden
være


Erklæringen om ellers
If else -sætningen bruges også som en betinget erklæring. Udsagnene eller kommandoerne efter if -betingelsen udføres, hvis den givne betingelse er sand. Ellers udføres den anden blok, hvis den givne betingelse ikke er sand. Restblokken efterfølges af if -blokken og starter med søgeordet else.

#!/bin/bash
HVOR=7
#deklarerer if -tilstanden
hvis [ $ VAR -gt 10 ]
derefter
smed ud 'Det$ VARer større end 10 '
#deklarerer andet
andet
smed ud 'Det$ VARer mindre end 10 '
#afslutter if -tilstanden
være


Flere forhold kan evalueres ved hjælp af if -betingelsen. Vi kan bruge og og operatoren (&) og eller eller operatoren (II) til at evaluere de flere betingelser i en enkelt if -sætning.

#!/bin/bash
HVOR=tyve
#deklarerer if -tilstanden
hvis [[ $ VAR -gt 10 && $ VAR -lt 100 ]]
derefter
smed ud 'Det$ VARer større end 10 og mindre end 100 '
#deklarerer andet
andet
smed ud 'Betingelsen opfylder ikke'
#afslutter if -tilstanden
være


Den indlejrede if -erklæring
I indlejret if -sætning har vi en if -sætning inde i en if -sætning. Den første if -sætning evalueres, hvis den er sand, så den anden, hvis sætning evalueres.

#!/bin/bash
HVOR=tyve
#deklarerer if -tilstanden
hvis [[ $ VAR -gt 10 ]]
derefter
#hvis tilstand inde i en anden, hvis konsition
hvis [ $ VAR -lt 100 ]
derefter
smed ud 'Det$ VARer større end 10 og mindre end 100 '
#deklarerer andet
andet
smed ud 'Betingelsen opfylder ikke'
#afslutter if -tilstanden
være
andet
smed ud 'Det$ VARer mindre end 10 '
være


If elif -erklæringen
If elif -sætningen bruges til at evaluere flere forhold. Den første betingelse starter med if -blokken og de andre betingelser efterfølges af elif -søgeordet. Lad os overveje det tidligere eksempel på variabelnummer og implementere if elif -sætningen i vores bash -script. Eq bruges som en ligelig operator.

#!/bin/bash
HVOR=tyve
#deklarerer if -tilstanden
hvis [[ $ VAR -ækv 1 ]]
derefter
smed ud 'Den variable værdi er lig med 1'
elif [[ $ VAR -ækv 2 ]]
derefter
smed ud 'Den variable værdi er lig med 2'
elif [[ $ VAR -ækv 3 ]]
derefter
smed ud 'Den variable værdi er lig med 2'
elif [[ $ VAR -gt 5 ]]
derefter
smed ud 'Den variable værdi er større end 5'
være


2. Looping
Loops er den væsentlige og grundlæggende del af ethvert programmeringssprog. I modsætning til de andre programmeringssprog bruges sløjferne også i Bash til at udføre en opgave gentagne gange, indtil den givne betingelse er sand. Sløjferne er iterative, de er et godt værktøj til automatisering af lignende typer opgaver. For -loop, while loop og indtil loop bruges i Bash.
Lad os diskutere disse sløjfer en efter en.

Imens loop
While loop udfører de samme udsagn eller kommandoer gentagne gange. Den evaluerer betingelsen, og kør udsagnene eller kommandoerne, indtil betingelsen er sand.
Dette er den grundlæggende syntaks for at bruge en while -loop i Bash.

Mens [tilstand eller testudtryk]
gøre
udsagn
Færdig

Lad os implementere while -sløjfen i vores script.sh -fil. Vi har en variabel VAR, hvis værdi er lig med nul. I while loop har vi sat en betingelse om, at loop skal køre, indtil værdien af ​​VAR er mindre end 20. Variabelværdien øges med 1 efter hver iteration. Så i dette tilfælde begynder løkken at køre, indtil den variable værdi er mindre end 20.

#!/bin/bash
HVOR=0
mens [ $ VAR -lt tyve ]
gøre
smed ud 'Den aktuelle værdi af variabel er$ VAR'
#forøgelse af værdien med 1 i VAR
HVOR= $((VAR +1))
Færdig


For -løkken
For -loop er den mest almindeligt anvendte loop i hvert programmeringssprog. Det bruges til at udføre den iterative opgave. Det er den bedste måde at udføre gentagne opgaver på. Lad os erklære for -loop i vores script.sh -fil og bruge den til at udføre en gentagen opgave.

#!/bin/bash
HVOR=0
til (( jeg==0; jeg<tyve; jeg ++))
gøre
smed ud 'Hej og velkommen til linuxhintet'
#forøgelse af variablen i
jeg= $((jeg+1))
Færdig
smed ud 'Dette er slutningen på for loop'


Indtil loop
Den anden type loop, der bruges i Bash, er indtil loop. Det udfører eller udfører også det samme sæt gentagne gange. Till -løkken evaluerer betingelsen og begynder at udføre, indtil den givne betingelse er falsk. Till -løkken slutter, når den givne betingelse er sand. Syntaksen for indtil loop er som følger:

indtil [tilstand]
gøre
udsagn
kommandoer
Færdig

Lad os implementere indtil -løkken i vores script.sh -fil. Till -løkken kører, medmindre betingelsen er falsk (værdien af ​​variablen er mindre end 20)

#!/bin/bash
HVOR=0
så længe [ $ VAR -gt tyve ]
gøre
smed ud 'Hej og velkommen til linuxhintet'
#forøgelse af variablen i
HVOR= $((VAR +1))
Færdig
smed ud 'Dette er slutningen på indtil loop'


3. Læse for brugeren og skrive den på skærmen
Bash giver brugeren frihed til at indtaste en strengværdi eller data på terminalen. Den bruger, der er indtastet streng eller data, kan læses fra terminalen, den kan gemmes i filen og kan udskrives på terminalen. I Bash -filen kan input fra brugeren læses ved hjælp af Læs nøgleord, og vi gemmer det i en variabel. Det variable indhold kan vises på terminalen ved hjælp af kommandoen echo.

#!/bin/bash
smed ud 'Skriv noget på terminalen'
#lagring af den indtastede værdi i VAR
LæsHVOR
smed ud 'Du indtastede:$ VAR'


Flere indstillinger kan bruges med kommandoen read. De mest almindeligt anvendte muligheder er -p og -s. -P viser prompten, og input kan tages i samme linje. –S tager input i lydløs tilstand. Indgangstegnene vises på terminalen. Det er nyttigt at indtaste nogle følsomme oplysninger, dvs. adgangskoder.

#!/bin/bash
Læs -s 'Indtast e -mail:'e -mail
smed ud 'Indtast adgangskode'
Læs -sadgangskode


4. Læsning og skrivning af tekstfiler
Tekstfiler er de vigtigste komponenter til at læse og skrive dataene. Dataene gemmes midlertidigt i tekstfilerne, og de kan let læses fra tekstfilen. Lad os først diskutere at skrive dataene i tekstfilen, og derefter vil vi diskutere læsning af dataene fra tekstfilerne.

Skrivning af tekstfiler
Dataene kan skrives ind i en fil på forskellige måder:

  • Ved at bruge højre vinkelbeslag eller tegn med større end (>)
  • Ved at bruge det dobbelte højre vinkelbeslag (>>)
  • Ved at bruge tee -kommandoen

Højre Angel Bracket Sign (>) for at skrive data
det er den mest almindeligt anvendte måde at skrive dataene ind i tekstfilen. Vi skriver dataene og sætter derefter> -tegnet. > -Tegnet peger på tekstfilen, hvor vi skal gemme dataene. Det tilføjer imidlertid ikke filen, og tidligere data i filen er fuldstændigt erstattet af de nye data.

#!/bin/bash
#bruger indtaster tekstfilnavnet
Læs -s 'Indtast filnavn:'FIL
#bruger indtaster de data, der skal gemmes i tekstfilen
Læs -s 'Skriv data, der skal indtastes i filen:'DATA
#lagring af data i tekstfilen
#> peger på filnavnet.
smed ud $ DATA > $ FIL


Højre Angel Bracket Sign (>>) for at skrive data
>> bruges til at gemme output fra enhver kommando i filen. For eksempel viser kommandoen ls -al indholdet og tilladelserne for en fil i et bestemt bibliotek. >> gemmer output i filen.

#!/bin/bash
#bruger indtaster tekstfilnavnet
Læs -s 'Indtast filnavn:'FIL
#lagring af kommandoutput i filen
ls -til >> $ FIL



Brug tee -kommando til at skrive data i tekstfilen
Tee -kommandoen i Bash bruges til at skrive kommandoens output til en tekstfil. Det udskriver kommandoutputtet på terminalen og gemmer det i tekstfilen.

#!/bin/bash
#bruger indtaster tekstfilnavnet
Læs -s 'Indtast filnavn:'FIL
#lagring af kommandoutput i filen ved hjælp af tee -kommandoen
ls -til | tee $ FIL


Tee -kommandoen overskriver som standard de eksisterende data i filen. Imidlertid kan -en mulighed med kommandoen tee bruges til at tilføje filen.

#!/bin/bash
#bruger indtaster tekstfilnavnet
Læs -s 'Indtast filnavn:'FIL
#lagring af kommandoutput i filen ved hjælp af tee -kommandoen
ls -til | tee -til $ FIL


Læsning af tekstfiler
Det kat kommando bruges til at læse data fra filen. Det er den mest almindeligt anvendte til dette formål. Det udskriver simpelthen indholdet af tekstfilen på terminalen. Lad os udskrive filens indhold eller data på terminalen ved hjælp af kat kommando.

#!/bin/bash
#bruger indtaster tekstfilnavnet
Læs -s 'Indtast filnavn:'FIL
#læsning af data fra tekstfilen
kat $ FIL


5. Kører andre programmer fra bash
Bash giver bemyndigelse til at køre andre programmer fra Bash -scriptet. Vi bruger kommandoen exec til at køre de andre programmer fra Bash. Exec -kommandoen erstatter den tidligere proces med den aktuelle proces og starter det aktuelle program. For eksempel kan vi åbne nano-, gedit- eller vim -editoren fra bash -scriptet.

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

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

På samme måde kan vi også køre browserprogrammet fra Bash. Lad os køre Mozilla Firefox -browseren.

#!/bin/bash
#kører firefox
execfirefox


Desuden kan vi køre ethvert program fra Bash ved hjælp af kommandoen exec.

6. Kommandolinjebehandling
Kommandolinjebehandlingen refererer til behandlingen af ​​de data, der er indtastet på terminalen. Kommandolinjedata behandles til mange formål, dvs. læsning af brugerinput, understating af kommandoerne og læsning af argumenterne. Tidligere har vi diskuteret read -kommandoen. Read-kommandoen bruges også til kommandolinjebehandling. I dette afsnit vil vi diskutere behandlingen af ​​kommandolinjeargumenter. I Bash kan vi behandle de argumenter, der sendes eller skrives på terminalen. Argumenterne behandles på samme måde som de bliver videregivet. Derfor kaldes det positionsparametre. I modsætning til andre programmeringssprog starter indekseringen af ​​argumenterne i Bash med 1. Dollartegnet ($) bruges til at læse argumenterne. For eksempel læser $ 1 det første argument, $ 2 læser det andet argument og så videre. Argumenterne kan analyseres af forskellige årsager, f.eks. For at tage input fra brugeren.

#!/bin/bash
smed ud 'Indtast dit navn'
#behandling af det første argument
smed ud 'Fornavn:' $ 1
#behandling af det andet argument
smed ud 'Mellemnavn:'$ 2
#behandling af det tredje argument
smed ud 'Efternavn:' $ 3
smed ud 'Fulde navn:' $ 1 $ 2 $ 3


Læsning af data fra terminalen ved hjælp af læsning og analyse af argumenterne er de mest egnede eksempler på kommandolinjebehandling.

Historie om bash og sammenligning med andre skaller

Bash er nu den væsentlige komponent i UNIX- og Linux -baserede systemer. Bourne Shell blev oprindeligt udviklet af Stephen Bourne. Det påtænkte formål med Stephen Bourne -skallen var at overvinde begrænsningerne af de allerede eksisterende skaller på det tidspunkt. Før Bourne Shell introducerede UNIX Thompson Shell. Imidlertid var Thompson -shell meget begrænset i behandling af script. Brugerne kunne ikke køre en tilstrækkelig mængde af scriptet. For at overvinde alle disse begrænsninger ved Thompson -skallen blev Bourne Shell introduceret. Det blev udviklet på Bells Lab. I 1989 revolutionerede Brian Fox Bourne -skallen ved at tilføje mange andre funktioner og kaldte den som Bourne Again Shell (BASH).

Navn på skal År Platform Beskrivelse Sammenligning med BASH
Thompson Shell 1971 UNIX Automatiseringen af ​​scriptet var begrænset. Brugeren kan kun lave en lille mængde scripting. BASH overvinder begrænsningerne i Thompson -shell, og brugeren kan skrive de store scripts.
Bourne Shell 1977 UNIX Det giver os mulighed for at skrive og køre en enorm mængde scripts. Bourne Shell giver ikke kommandoredigereren og et større antal genvejsfaciliteter. BASH giver forbedringer i designet sammen med kommandoredigereren.
POSIX skal 1992 POSIX POSIX Shell er bærbar. Det giver mange genveje og jobkontrol. BASH er populær til at udføre de opgaver, der ikke kræver portabilitet.
Z Shell 1990 UNIX Z-shell er funktionsrig. Det er en meget kraftfuld skal og giver funktioner som automatisk komplet kommando, stavningskorrektion og autofyld. BASH mangler nogle af de funktioner, der leveres af Z Shell.

Konklusion

BASH er et meget kraftfuldt værktøj, der giver os mulighed for at køre kommandoer og scripts. Et BASH -script giver os mulighed for at automatisere de daglige opgaver og kommandoer. Et BASH -script er en kombination af flere kommandoer. BASH -filen slutter med .sh -udvidelsen. Inden vi kører BASH -scriptet, skal vi opdatere filtilladelserne, og vi skal give den eksekverbare tilladelse til .sh -filen. Denne artikel forklarer BASH og BASH scripting ved hjælp af enkle eksempler og vigtige lektioner. Desuden beskriver den historien om BASH og sammenligner dens funktioner med forskellige andre kraftfulde skaller.