Topp 10 Bash -skripteksempler

Topp 10 Bash -skripteksempler

Bash -skript kan brukes til forskjellige formål, for eksempel å utføre en Shell -kommando, kjøre flere kommandoer sammen, tilpasse administrative oppgaver, utføre oppgavautomatisering osv. Så kunnskap om grunnleggende programmering av programmering er viktig for hver Linux -bruker. Denne artikkelen vil hjelpe deg å få den grunnleggende ideen om bash -programmering. De fleste av de vanlige operasjonene av bashskripting blir forklart med veldig enkle eksempler her.

Følgende emner for bash -programmering er dekket i denne artikkelen.

  1. Hei Verden
  2. Ekkokommando
  3. Kommentarer
  4. Multi-linje kommentar
  5. Mens du er sløyfe
  6. For sløyfe
  7. Få brukerinngang
  8. Hvis uttalelse
  9. Og betingelse hvis uttalelse
  10. Eller tilstand hvis uttalelse
  11. Ellers hvis og ellers tilstand
  12. Sakstilstand
  13. Få argumenter fra kommandolinjen
  14. Få argumenter fra kommandolinjen med navn
  15. Kombiner to strenger i en variabel
  16. Få substring av strenger
  17. Legg til 2 tall i en variabel
  18. Lag en funksjon
  19. Bruk funksjonsparametere
  20. Pass Return Value from Script
  21. Lag katalog
  22. Lage katalog ved å sjekke eksistensen
  23. Les en fil
  24. Slett en fil
  25. Legg til fil
  26. Test om filen eksisterer
  27. Send e -posteksempel
  28. Få parse gjeldende dato
  29. Vent kommando
  30. Sleep Command

Lag og utfør første bash -program:

Du kan kjøre Bash -skript fra terminalen eller ved å utføre hvilken som helst bash -fil. Kjør følgende kommando fra terminalen for å utføre en veldig enkel basherklæring. Kommandoen output vil være 'Hei Verden'.

$ ekko "Hello World"

Åpne hvilken som helst redigerer for å opprette en bash -fil. Her, Nano Redaktør brukes til å opprette filen og filnavnet er satt som 'Først.sh '

$ nano først.sh

Legg til følgende bash -skript i filen og lagre filen.

#!/bin/bash
ekko "Hello World"

Du kan kjøre bash -fil på to måter. En måte er ved å bruke bash -kommando og en annen er ved å angi utførelse av tillatelse til å basere filen og kjøre filen. Begge måter vises her.

$ bash først.sh

Eller,

$ chmod a+x først.sh
$ ./Først.sh

Gå til toppen

Bruk av ekkokommando:

Du kan bruke Echo -kommando med forskjellige alternativer. Noen nyttige alternativer er nevnt i følgende eksempel. Når du bruker 'ekko'Kommando uten noe alternativ, blir en ny linje lagt til som standard. '-n' alternativet brukes til å skrive ut en hvilken som helst tekst uten ny linje og '-E' Alternativet brukes til å fjerne tilbakeslagstegn fra utgangen. Lag en ny bash -fil med et navn, 'ekko_eksempel.sh'Og legg til følgende skript.

#!/bin/bash
ekko "utskrift av tekst med newline"
ekko -n "Skriv ut tekst uten Newline"
ekko -e "\ nremoving \ t backslash \ t tegn \ n"

Kjør filen med bash -kommando.

$ Bash Echo_Example.sh

Gå til toppen

Bruk av kommentar:

'#' Symbol brukes til å legge til enkeltlinjekommentar i bash -skriptet. Lage en ny fil som heter 'kommentar_eksempel.sh ' og legg til følgende skript med enkeltlinjekommentarer.

#!/bin/bash
# Legg til to numeriske verdi
((sum = 25+35)))
#Trykk resultatet
ekko $ sum

Kjør filen med bash -kommando.

$ BASH Comment_Example.sh

Gå til toppen

Bruk av multi-linjekommentar:

Du kan bruke multi -linjekommentar i bash på forskjellige måter. En enkel måte vises i følgende eksempel. Lage en ny bash som heter, 'Multiline-Comment.sh ' og legg til følgende skript. Her, ':' og ' Symboler brukes til å legge til multiline kommentar i bash -skriptet. Dette følgende skriptet vil beregne kvadratet på 5.

#!/bin/bash
: '
Følgende skript beregner
kvadratverdien av tallet, 5.
'
((område = 5*5))
ekko $ område

Kjør filen med bash -kommando.

$ bash multiline-comment.sh

Du kan sjekke følgende lenke for å vite mer om bruken av bash -kommentar.

Gå til toppen

Bruker mens Loop:

Lag en bash -fil med navnet, 'mens_eksemplet.sh ', å vite bruken av samtidig som Løkke. I eksemplet, samtidig som sløyfe vil iterere for 5 ganger. Verdien av telle variabel vil øke av 1 i hvert trinn. Når verdien av telle variabel vil 5 da samtidig som Loop vil avslutte.

#!/bin/bash
gyldig = sant
telling = 1
mens [$ gyldig]
gjøre
ekko $ telling
hvis [$ count -eq 5];
deretter
gå i stykker
fi
(teller ++))
Ferdig

Kjør filen med bash -kommando.

$ BASH MENE_EXAMPLE.sh

Du kan sjekke følgende lenke for å vite mer om bruken av bash mens Loop.

Gå til toppen

Bruker for loop:

Det grunnleggende til Loop -erklæring vises i følgende eksempel. Lage en fil som heter 'for eksempel.sh'og legg til følgende skript ved hjelp av til Løkke. Her, til sløyfe vil iterere for 10 ganger og skriv ut alle verdiene på variabelen, disk i enkeltlinje.

#!/bin/bash
for ((teller = 10; teller> 0; teller--))
gjøre
ekko -n "$ teller"
Ferdig
printf "\ n"

Kjør filen med bash -kommando.

$ bash for_example.sh

Du kan bruke til loop til forskjellige formål og måter i bashskriptet ditt. Du kan sjekke følgende lenke for å vite mer om bruken av bash for loop.

Gå til toppen

Få brukerinngang:

'lese'Kommando brukes til å ta innspill fra bruker i bash. Lage en fil som heter 'user_input.sh'og legg til følgende skript for å ta innspill fra brukeren. Her vil en strengverdi bli hentet fra brukeren og vise verdien ved å kombinere annen strengverdi.

#!/bin/bash
ekko "Skriv inn navnet ditt"
Les navn
ekko "Velkommen $ navn til Linuxhint"

Kjør filen med bash -kommando.

$ bash user_input.sh

Du kan sjekke følgende lenke for å vite mer om bruken av Bash -brukerinngang.

Gå til toppen

Bruker IF -uttalelse:

Du kan bruke hvis tilstand med enkelt- eller flere forhold. Start- og sluttblokk av denne uttalelsen er definert av 'hvis' og 'fi'. Lage en fil som heter 'Simple_if.sh'Med følgende skript for å vite bruken hvis uttalelse i bash. Her, 10 er tilordnet variabelen, n. Hvis verdien av $ n er mindre enn 10 da vil utdata være “Det er et ett siffernummer”, Ellers vil utgangen være“Det er et tosifret nummer”. Til sammenligning, '-lt' brukes her. Til sammenligning kan du også bruke '-EQ' til likestilling, '-Ne' til ikke likhet og '-GT' til større enn I bash -manus.

#!/bin/bash
n = 10
hvis [$ n -lt 10];
deretter
ekko "Det er et ett siffernummer"
ellers
ekko "Det er et tosifret nummer"
fi

Kjør filen med bash -kommando.

$ bash simple_if.sh

Gå til toppen

Bruker IF -uttalelse med og logikk:

Ulike typer logiske forhold kan brukes i IF -uttalelse med to eller flere forhold. Hvordan du kan definere flere forhold i IF -uttalelse ved hjelp av OG Logikk vises i følgende eksempel. '&&' brukes til å søke OG logikk av hvis uttalelse. Lag en fil som heter 'if_with_and.sh ' For å sjekke følgende kode. Her, verdien av Brukernavn og passord Variabler vil bli tatt fra brukeren og sammenlignet med 'admin'Og'hemmelig'. Hvis begge verdiene samsvarer, vil utdataene være “Gyldig bruker”, Ellers vil utgangen være“ugyldig bruker”.

#!/bin/bash
ekko "Enter brukernavn"
Les brukernavn
ekko "Skriv inn passord"
Les passord
if [[($ brukernavn == "admin" && $ passord == "hemmelig")]]; deretter
Ekko "Gyldig bruker"
ellers
ekko "Ugyldig bruker"
fi

Kjør filen med bash -kommando.

$ bash if_with_and.sh

Gå til toppen

Bruker IF -uttalelse med eller logikk:

'||'brukes til å definere ELLER logikk i hvis betingelse. Lag en fil som heter 'if_with_or.sh ' med følgende kode for å sjekke bruken av ELLER logikk av hvis uttalelse. Her, verdien av n vil bli hentet fra brukeren. Hvis verdien er lik 15 eller 45 da vil utgangen være “Du vant spillet”, Ellers vil utgangen være“Du mistet spillet”.

#!/bin/bash
ekko "Skriv inn et hvilket som helst nummer"
Les n
if [[($ n -eq 15 || $ n -eq 45)]]]
deretter
ekko "Du vant spillet"
ellers
ekko "Du mistet spillet"
fi

Kjør filen med bash -kommando.

$ bash if_with_or.sh

Gå til toppen

Bruker annet hvis uttalelse:

Bruken av eller hvis Tilstanden er lite annerledes i bash enn annet programmeringsspråk. 'Elif'brukes til å definere eller hvis tilstand i bash. Lage en fil som heter, 'elseif_example.sh'og legg til følgende skript for å sjekke hvordan eller hvis er definert i bash manus.

#!/bin/bash
ekko "Skriv inn heldige nummer"
Les n
hvis [$ n -eq 101];
deretter
ekko "Du har 1. pris"
elif [$ n -eq 510];
deretter
Echo "You Got 2nd Prize"
elif [$ n -eq 999];
deretter
Echo "You Got 3. Prize"
ellers
ekko "Beklager, prøv neste gang"
fi

Kjør filen med bash -kommando.

$ bash elseif_example.sh

Gå til toppen

Bruke saksuttalelse:

Sak uttalelse brukes som alternativet til If-Elseif-Else uttalelse. Start- og sluttblokken for denne uttalelsen er definert av 'sak'Og'Esac'. Lag en ny fil som heter, 'case_example.sh'Og legg til følgende skript. Utgangen fra følgende skript vil være den samme for forrige eller hvis eksempel.

#!/bin/bash
ekko "Skriv inn heldige nummer"
Les n
sak $ n i
101)
Echo Echo "You Got 1. Prize" ;;
510)
Echo "You Got 2. Prize" ;;
999)
Echo "You Got 3. Prize" ;;
*)
ekko "Beklager, prøv neste gang" ;;
Esac

Kjør filen med bash -kommando.

$ bash case_example.sh

Gå til toppen

Få argumenter fra kommandolinjen:

Bash -skript kan lese innspill fra kommandolinjeargument som annet programmeringsspråk. For eksempel, $ 1 og $ 2 Variabel brukes til å lese første og andre kommandolinje -argumenter. Lag en fil som heter “kommandolinje.sh”Og legg til følgende skript. To argumentverdier lest av følgende skript og skriver ut det totale antall argumenter og argumentverdiene som utdata.

#!/bin/bash
ekko "Total argumenter: $#"
ekko "1. argument = $ 1"
ekko "2. argument = $ 2"

Kjør filen med bash -kommando.

$ bash command_line.Sh Linux hint

Du kan sjekke følgende lenke for å vite mer om bruken av Bash Command Line -argumentet.

Gå til toppen

Få argumenter fra kommandolinjen med navn:

Hvordan du kan lese kommandolinje -argumenter med navn vises i følgende skript. Lage en fil som heter, 'Command_line_names.sh ' og legg til følgende kode. Her, to argumenter, X og Y leses av dette skriptet og skriv ut summen av x og y.

#!/bin/bash
For Arg i "$@"
gjøre
indeks = $ (ekko $ arg | cut -f1 -d =)
val = $ (ekko $ arg | cut -f2 -d =)
sak $ indeks i
X) x = $ val ;;
Y) y = $ val ;;
*)
Esac
Ferdig
((resultat = x+y))
ekko "x+y = $ resultat"

Kjør filen med bash -kommando og med to kommandolinjeargumenter.

$ bash command_line_names x = 45 y = 30

Gå til toppen

Kombiner strengvariabler:

Du kan enkelt kombinere strengvariabler i bash. Lag en fil som heter “String_combine.sh”Og legg til følgende skript for å sjekke hvordan du kan kombinere strengvariabler i bash ved å plassere variabler sammen eller bruke '+' operatør.

#!/bin/bash
String1 = "Linux"
String2 = "Hint"
ekko "$ String1 $ String2"
String3 = $ String1+$ String2
String3+= "er et godt opplæringsmessig bloggside"
Echo $ String3

Kjør filen med bash -kommando.

$ bash string_combine.sh

Gå til toppen

Få substring av streng:

Som annet programmeringsspråk har Bash ingen innebygd funksjon for å kutte verdien fra noen strengdata. Men du kan gjøre oppgaven med å substring på en annen måte i bash som vises i følgende skript. For å teste skriptet, lag en fil som heter 'substring_example.sh'Med følgende kode. Her, verdien, 6 indikerer utgangspunktet der substringen vil starte og 5 indikerer lengden på substringen.

#!/bin/bash
Str = "Lær Linux fra Linuxhint"
substr = $ str: 6: 5
ekko $ substr

Kjør filen med bash -kommando.

$ bash substring_example.sh

Gå til toppen

Legg til to tall:

Du kan utføre de aritmetiske operasjonene i bash på forskjellige måter. Hvordan du kan legge til to heltallnumre i bash ved hjelp av doble parenteser vises i følgende skript. Lage en fil som heter 'add_numbers.sh'Med følgende kode. To heltallverdier vil bli hentet fra brukeren og trykket resultatet av tillegg.

#!/bin/bash
ekko "Angi første nummer"
Les x
ekko "Angi andre nummer"
klar
((sum = x+y))
ekko "resultatet av tillegg = $ sum"

Kjør filen med bash -kommando.

$ bash add_numbers.sh

Du kan sjekke følgende lenke for å vite mer om basitmetikk.

Gå til toppen

Opprett funksjon:

Hvordan du kan lage en enkel funksjon og ringe funksjonen vises i følgende skript. Lage en fil som heter 'funksjon_eksempel.sh'Og legg til følgende kode. Du kan kalle hvilken som helst funksjon ved navn bare uten å bruke noen brakett i bash -skriptet.

#!/bin/bash
Funksjon F1 ()

ekko 'Jeg liker bash -programmering'

F1

Kjør filen med bash -kommando.

$ bash funksjon_example.sh

Gå til toppen

Lag funksjon med parametere:

Bash kan ikke erklære funksjonsparameter eller argumenter på funksjonsdeklarasjonen. Men du kan bruke parametere i funksjon ved å bruke annen variabel. Hvis to verdier sendes på tidspunktet for funksjonsanrop, brukes $ 1 og $ 2 variabel for å lese verdiene. Lage en fil som heter 'Funksjon | _Parameter.sh'Og legg til følgende kode. Her, funksjonen, 'Rectangle_area ' vil beregne området til et rektangel basert på parameterverdiene.

#!/bin/bash
Rectangle_area ()
Område = $ (($ 1 * $ 2))
Echo "-området er: $ område"

RECTANGE_AAREA 10 20

Kjør filen med bash -kommando.

$ BASH FUNCTION_PARAMETER.sh

Gå til toppen

Pass returverdi fra funksjon:

Bash -funksjon kan passere både numeriske og strengverdier. Hvordan du kan passere en strengverdi fra funksjonen vises i følgende eksempel. Lage en fil som heter, 'funksjon_return.sh'Og legg til følgende kode. Funksjonen, hilsen() Returnerer en strengverdi i variabelen, Val som skriver ut senere ved å kombinere med annen streng.

#!/bin/bash
funksjon hilsen ()
str = "Hei, $ navn"
ekko $ str

ekko "Skriv inn navnet ditt"
Les navn
val = $ (hilsen)
ekko "Returverdi på funksjonen er $ val"

Kjør filen med bash -kommando.

$ bash funksjon_return.sh

Du kan sjekke følgende lenke for å vite mer om bruken av bashfunksjoner.

Gå til toppen

Lag katalog:

Bash bruker 'mkdir'Kommando for å opprette en ny katalog. Lage en fil som heter 'make_directory.sh'og legg til følgende kode for å ta et nytt katalognavn fra brukeren. Hvis katalognavnet ikke finnes på det nåværende stedet, vil det opprette katalogen, ellers vil programmet vise feil.

#!/bin/bash
ekko "Skriv inn katalognavn"
Les Newdir
'Mkdir $ newdir'

Kjør filen med bash -kommando.

$ bash make_directory.sh

Gå til toppen

Lag katalog ved å sjekke eksistensen:

Hvis du vil sjekke eksistensen av katalogen på det nåværende stedet før du utfører 'mkdir'Kommando så kan du bruke følgende kode. '-DAlternativet brukes til å teste en bestemt katalog er eksisterende eller ikke. Lage en fil som heter, 'DIRECTORY_EXIST.sh ' og legg til følgende kode for å opprette en katalog ved å sjekke eksistensen.

#!/bin/bash
ekko "Skriv inn katalognavn"
Les Ndir
hvis [-d "$ ndir"]
deretter
ekko "Katalog eksisterer"
ellers
'Mkdir $ ndir'
ekko "katalog opprettet"
fi

Kjør filen med bash -kommando.

$ BASH DIRECTORY_EXIST.sh

Du kan sjekke følgende lenke for å vite mer om Bash Directory Creation.

Gå til toppen

Les en fil:

Du kan lese hvilken som helst fillinje for linje i bash ved å bruke loop. Lage en fil som heter, 'read_file.sh'Og legg til følgende kode for å lese en eksisterende fil som heter,'bok.tekst'.

#!/bin/bash
fil = 'bok.tekst'
mens du leser linjen; gjøre
ekko $ linje
Ferdig < $file

Kjør filen med bash -kommando.

$ bash read_file.sh

Kjør følgende kommando for å sjekke det opprinnelige innholdet i 'bok.tekst'Fil.

$ kattebok.tekst

Du kan sjekke følgende lenke for å kjenne de forskjellige måtene å lese fil i bash.

Gå til toppen

Slett en fil:

'rm'Kommando brukes i bash for å fjerne enhver fil. Lage en fil som heter 'slett fil.sh'Med følgende kode for å ta filnavnet fra brukeren og fjerne. Her, '-Jeg' Alternativet brukes til å få tillatelse fra brukeren før du fjerner filen.

#!/bin/bash
ekko "Skriv inn filnavn for å fjerne"
Les fn
rm -i $ fn

Kjør filen med bash -kommando.

$ ls
$ BASH DELETE_FILE.sh
$ ls

Gå til toppen

Legg til fil:

Nye data kan legges til i hvilken som helst eksisterende fil ved å bruke '>>' operatør i bash. Lag en fil som heter 'append_file.sh'Og legg til følgende kode for å legge til nytt innhold på slutten av filen. Her, 'Lære Laravel 5'vil bli lagt til på'bok.tekst' fil etter å ha utført skriptet.

#!/bin/bash
ekko "før du legger til filen"
kattebok.tekst
Ekko "Læring Laravel 5" >> bok.tekst
ekko "Etter å ha lagt filen"
kattebok.tekst

Kjør filen med bash -kommando.

$ bash append_file.sh

Gå til toppen

Test hvis fil eksisterer:

Du kan sjekke eksistensen av filen i bash ved å bruke '-E' eller '-f' alternativ. '-f' Alternativet brukes i følgende skript for å teste filens eksistens. Lage en fil som heter, 'file_exist.sh'Og legg til følgende kode. Her vil filnavnet passere fra kommandolinjen.

#!/bin/bash
filnavn = $ 1
hvis [-f "$ filnavn"]; deretter
ekko "fil eksisterer"
ellers
ekko "-filen eksisterer ikke"
fi

Kjør følgende kommandoer for å sjekke eksistensen av filen. Her, bok.tekst filen eksisterer og bok2.tekst er ikke eksisterende på det nåværende stedet.

$ ls
$ bash file_exist.SH -bok.tekst
$ bash file_exist.SH BOOK2.tekst

Gå til toppen

Send e-post:

Du kan sende e -post ved å bruke 'post'Eller'Sendmail'Kommando. Før du bruker disse kommandoene, må du installere alle nødvendige pakker. Lage en fil som heter, 'mail_example.sh'og legg til følgende kode for å sende e -posten.

#!/bin/bash
Mottaker = ”[email protected]
Emne = ”hilsen”
Melding = ”velkommen til nettstedet vårt”
'Mail -S $ Emne $ mottaker <<< $Message'

Kjør filen med bash -kommando.

$ bash mail_example.sh

Gå til toppen

Få parse gjeldende dato:

Du kan få gjeldende systemdato og tidsverdi ved å bruke 'Dato'Kommando. Hver del av dato og tidsverdi kan analyseres ved hjelp av 'Y ',' m ',' d ',' h ',' m ' og 'S '. Lage en ny fil som heter 'date_parse.sh ' og legg til følgende kode til separat dag, måned, år, time, minutt og andre verdier.

#!/bin/bash
År = 'Dato +%y'
Måned = 'Dato +%m'
Dag = 'Dato +%d'
Time = 'Dato +%h'
Minutt = 'Dato +%m'
Second = 'Dato +%s'
ekko 'Dato'
Ekko "Gjeldende dato er: $ dag- $ måned- $ år"
ekko "Nåværende tid er: $ time: $ minutt: $ andre"

Kjør filen med bash -kommando.

$ bash date_parse.sh

Gå til toppen

Vent kommando:

vente er en innebygd kommando av Linux som venter på å fullføre en hvilken som helst løpsprosess. vente Kommando brukes med en bestemt prosess -ID eller jobb -ID. Hvis ingen prosess -ID eller jobb -ID er gitt med Wait -kommandoen, vil den vente på at alle nåværende barneprosesser skal fullføre og returnerer utgangsstatus. Lage en fil som heter 'Wait_Example.sh ' og legg til følgende skript.

#!/bin/bash
ekko "vent kommando" og
prosess_id = $!
Vent $ prosess_id
ekko "forlatt med status $?""

Kjør filen med bash -kommando.

$ bash wait_example.sh

Du kan sjekke følgende lenke for å vite mer om Bash Linux Wait Command.

Gå til toppen

Sleep Command:

Når du vil ta utførelsen av en kommando i en bestemt periode, kan du bruke sove kommando. Du kan angi forsinkelsesbeløpet med sekunder (er), minutter (m), timer (h) og dager (d). Lag en fil som heter 'Sleep_example.sh ' og legg til følgende skript. Dette skriptet vil vente i 5 sekunder etter å ha kjørt.

#!/bin/bash
ekko "Vent i 5 sekunder"
Sov 5
ekko "fullført"

Kjør filen med bash -kommando.

$ bash sleep_example.sh

Du kan sjekke følgende lenke for å vite mer om Bash Linux Sleep Command.

Gå til toppen

Håper, etter å ha lest denne artikkelen har du fått et grunnleggende konsept på bash -skriptspråk, og du vil kunne bruke dem basert på dine krav.