Looping er en iboende kunst, som kan gjøre arbeidet ditt enklere og hjelpe deg med å automatisere repeterende oppgaver relativt enkelt.
Se for deg en situasjon der du trenger å oppdatere en serie tall eller tekst, og i stedet for å gjøre det manuelt, får du systemet til å gjøre det for deg. Dette er kraften til looping og fordelene det gir deg.
Loops, som en funksjon, er tilgjengelig på nesten alle programmeringsspråk; Linuxs Bash er intet unntak fra denne regelen.
Her er en guide som forklarer hvordan du kan bruke for-løkken i et skall-skript.
For løkkestruktur
Å bruke for loop in shell-skriptene er rimelig grei, og du kan manipulere strukturen for å oppnå forskjellige mål.
Grunnstrukturen er som følger:
for element i [LIST]
gjøre
[KOMMANDOER]
ferdig
Med en loop kan du bla gjennom numeriske og tegnverdier, avhengig av timebehovet.
I slekt:Slik bruker du løkker i JavaScript
Her er strukturen til en for-løkke i et skall-skript:
for VARIABEL i 1 2 3 4 5.. N
gjøre
kommando1
kommando2
kommandoN
ferdig
Du kan definere antall iterasjoner på den første linjen. På denne måten vil du nevne startverdien og sluttverdien.
Antall iterasjoner bestemmes av verdiene du angir, mens koden etter gjøre statement er den resulterende løkkeverdien.
Opprette og kjøre for Loops i Linux Bash
Åpne Linux-terminalen for å begynne å skrive kode.
Et tekstredigeringsprogram brukes til å lagre skallskriptet, som skriver ut de ønskede resultatene når det kjøres. For illustrasjonsformål er kommandoene i denne veiledningen skrevet i Nano tekstredigerer.
Type nano i terminalens kommandolinje for å åpne tekstredigeringsprogrammet, etterfulgt av skallskriptnavnet.
nano ForLoops.sh
Du kan endre navnet på skallskriptet til det du vil. Utvidelsen er sh, siden du skal lagre et shell-skript.
Skriv ut heltall med løkker
I denne delen vil følgende koder demonstrere hvordan du kan skrive ut heltallsverdier annerledes. For å bruke en for-løkke i et skall-skript for å skrive ut heltall, kan du prøve noen av disse kodeeksemplene.
1. Løkkekode for å skrive ut et sett med tall
Når editoren åpnes, er det på tide å skrive koden.
#!/usr/bin/bash
for i i 1 2 3
gjøre
ekko "Gjeldende # $i"
ferdig
Produksjon:
Hvor:
- Jeg = variabelnavn for å lagre de itererte verdiene
- 1 2 3 = antall ganger for-løkken i skall-skriptet itererer
- gjøre = kommando for å utføre et bestemt sett med handlinger
- ekko = skriv ut resultatene definert ved siden av
- ferdig = slutten av løkken
Lagre koden i tekstredigering ved å trykke Ctrl + X. Lagre og avslutt skriptet.
I slekt: Hvordan bruke For, While og Do While Loops i Java med eksempler
Før du kjører koden, må du endre shell-skriptets tillatelser.
Tast inn chmod +x etterfulgt av ditt shell script filnavn:
chmod +x Forloops.sh
Når tillatelsene er gitt, kjører du for-løkken i shell-skriptet ditt ved å skrive inn følgende:
./Forloops.sh
Utdataene skrives ut i terminalvinduet.
2. Alternativ måte å skrive ut et sett med tall
Det er alternative måter å definere en for-løkke i et skall-skript. Du kan også spesifisere start- og sluttverdien for løkkens iterasjoner ved å bruke krøllede parenteser.
Her er kodestrukturen:
for i i {1..3} # a for loop definerer en variabel og hvor mange iterasjoner du vil gjøre gjennom en loop
gjøre
ekko "Gjeldende # $i: Eksempel 2"
ferdig
Sløyfen vil kjøre tre ganger, og verdiene vil bli skrevet ut på følgende måte:
3. Sløyfekode ved hjelp av trinnverdier
Du kan definere trinnverdiene i løkken din hvis du vil bevege deg usekvensielt gjennom iterasjonene. Avhengig av verdien som er spesifisert, vil utgangen ha et fast gap.
For eksempel:
for i i {1..10..2}
gjøre
ekko "Nummer = $i"
ferdig
Hvor:
- Jeg = variabel for å lagre iterasjonene
- 1..10 = antall iterasjoner for å kjøre løkken
- 2 = trinnverdi
- gjøre = kommando for å skrive ut utdataene
- ekko = utskriftskommando
- ferdig = exit-kommando for loopen
Produksjon:
Utgangen har en forskjell på to, som ble spesifisert i trinnsetningen.
Skriv ut tegnverdier ved å bruke for løkker
For loops in shell-skripting er ikke begrenset til bare heltall. I Bash kan du bruke en for-løkke for å effektivt iterere gjennom tegn og strengverdier.
1. Looping gjennom strenger
Her er et grunnleggende eksempel på hvordan du kan gå gjennom noen strengverdier (definert i for-setningen):
for navn i John Jack Mary
gjøre
ekko "Mitt navn er $navn"
ferdig
Hvor:
- Navn = variabel for å lagre strengverdiene
- gjøre = kommando for å skrive ut utdataene
- ekko = utskriftskommando
- ferdig = exit-kommando for loopen
Produksjon:
Dette for loop vil iterere tre ganger, som det bare er tre strengverdier spesifisert i til uttalelse.
2. Looping gjennom strenger med betingelser
Hva om du vil passere noen logiske betingelser for å avslutte sløyfen midtveis? For dette formålet kan du bruke logiske utsagn som f.eks HVIS uttalelse. IF-setningen kontrollerer hvordan loopen vil fungere og hvilken utgang som vil skrives ut som et resultat.
for element i Hydrogen Helium Lithium Beryllium; gjøre
if [[ "$element" == 'Lithium' ]]; deretter
gå i stykker
fi
ekko "Element: $element"
ferdig
echo 'All Done!'
I slekt:Hvordan bruke løkker med lister i PythonSå snart elementets verdi er lik litium, avsluttes løkken, og utdataene skrives ut. Sløyfen løper til betingelsen ikke lenger er oppfylt.
Siden litium er tredje i listen over verdier, vil loopen kjøre i to iterasjoner før den skriver ut den endelige utdata Ferdig!.
Kjører looper i Linux Bash
Loops er en viktig del av Linux-skallstrukturen, som i stor grad kan forbedre funksjonen til Linux-skript.
Hvis du må skrive ut repeterende utdata, er det ingenting bedre enn loops i Bash-skript. Som vi nevnte tidligere, er loops tilgjengelig i nesten alle programmeringsspråk, og Python er intet unntak. Kutt ut repetisjon og lev etter DRY (Don't Repeat Yourself)-koden.
For Loops er en essensiell programmeringsferdighet. Lær hvordan du bruker dem i Python her.
Les Neste
- Programmering
- Linux
- Linux
- Linux Bash Shell
- Programmering
Gaurav Siyal har to års skriveerfaring, og har skrevet for en rekke digitale markedsføringsfirmaer og programvarelivssyklusdokumenter.
Abonner på vårt nyhetsbrev
Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!
Klikk her for å abonnere