Hvordan du gjør bash nest mens du er sløyfe

Hvordan du gjør bash nest mens du er sløyfe
Løkkene er ganske kjent på de fleste programmeringsspråk for å iterere dataene eller øke eller redusere verdiene i koden. Løkkene kan brukes alene eller i nestede former. En av de mest kjente løkkene som brukes i programmering er "mens" -løkken. Denne sløyfen fortsetter å bli utført til den nevnte tilstanden er tilfredsstillende. Innenfor denne guiden vil vi overveie måten å bruke den nestede "mens" -løkken i bash -programmering. Ettersom det meste av arbeidet vårt ville være gjennom en terminal, så må vi åpne den først. Derfor prøver vi hurtigtasten “Ctrl+Alt+T” for å åpne terminalskallpåføringen av Ubuntu 20.04 System.

La oss begynne å lage en nestet "while" -sløyfe i bashskriptet til Ubuntu 20.04. Dette vil bli startet fra opprettelsen av en ny fil i en terminal ved hjelp av en enkel berøringsspørsmål med Bash -filnavnet. Filnavnet er “NYTT.sh ”. Denne filen holdes nå i hjemmemappen til Ubuntu 20.04 System. Vi må åpne den i noen redaktører for å legge til bash -kode. Så vi har brukt “GNU Nano” -redaktøren for dette formålet. Denne filen er åpnet ved hjelp av en enkel "nano" -instruksjon og åpner den raskt i redaktøren. Både berørings- og nano -instruksjonene vises i det vedlagte skjermbildet.

Eksempel 01: Enkelt mens du er sløyfe

Det aller første eksemplet vil bare forklare singelen mens Loop in Bash. Den tomme Nano -redaktøren åpnes via terminalskallet. Det er på tide å legge til litt bash -kode til den. Vi har startet bash -koden vår med bash -forlengelsen i.e. “#!/bin/sh ”. Vi har justert en variabel "var" med en verdi på 5. Mens sløyfe er startet med firkantede parenteser rundt tilstanden. Den bruker sammenligningsoperatøren “LT” for å teste om den variable “VAR” -verdien er mindre enn verdi 10. Ettersom tilstanden er sann, vil den utføre "gjør" -delen til "ferdig". Så i løpet av mens Loop har den brukt Echo -setningen for å vise den variable verdien. Neste påfølgende linje øker den variable “VAR” -verdien med 1 hver gang tilstanden oppfyller. Skriptet ender her.

La oss bare kjøre singelen mens sløyfekode i terminalen med “bash” -kommandoen som nedenfor. Det vil øke den variable verdien til den tilsvarer 10 og deretter stoppe. Du kan se utdataene nedenfor.

Eksempel 02: Nestet mens du er sløyfe

La oss ha vårt andre eksempel som vil vise oss hvordan vi bruker nestet mens du er sløyfe i bash. Så koden er startet med samme bash -forlengelse i Nano Bash -filen. Iteratoren “jeg” er satt til 0. Mens Loop er startet med disse firkantede parentesene som vises i koden. Den bruker variabelen “I 'for å sjekke om det er mindre enn 10 eller ikke via sammenligningsoperatøren“ LT ”. Som tilstanden møter jeg.e., 0 er mindre enn 10, den vil utføre "gjør" -delen av en loop. DO -delen inneholder en Echo -setning for å vise variabelen “I” gjeldende verdi og en økningserklæring for å øke verdien av variabel 'I' med 3. Denne økte verdien vil bli spart igjen til variabelen 'I'.

Den neste indre "mens" -løkken vil ikke bli utført da tilstanden i den ikke møter jeg.e., 3 tilsvarer ikke 6. Så den ytre mens Loop vil fortsette å utføre til den når verdien 6. I sine 3Rd iterasjon, verdien vil nå 6 og den indre "mens" -løkken vil bli utført som tilstanden tilfredsstiller. Innenfor den indre "mens" -løkken har vi to ekko -uttalelser. Den ene er å vise gjeldende iterasjon eller variabel “i” -verdi. Den andre uttalelsen er å fortelle at variabelen “i” -verdien vil bli redusert med 2 fra nå. Etter begge ekko -uttalelsene har vi brukt reduksjonserklæringen for å redusere den nåværende verdien av variabelen “I” med 2 og lagre den igjen på den. Begge løkkene slutter her når programmet er fullført.

Etter utførelsen ble den ytre "mens" sløyfen henrettet 3 ganger og viste 0,3,6. Da verdien av "jeg" nådde 6 ved økning, utførte den den indre "mens" -løkken. Gjeldende verdi “6” for “I” -variabelen er dekrementert med 2 og kontrollen gis til den ytre sløyfen igjen. Den ytre sløyfen viste den reduserte verdien “4” og økte den deretter med 3. Nå er verdien “7” og vises. Den indre "mens" -løkken vil ikke bli utført ettersom verdien "7" ikke tilsvarer "6.”. Så den ytre sløyfen blir igjen utført, og nå blir verdien 10 med en økning på 3. Her stopper den ytre sløyfen når forholdene møtes i.e., verdien av "jeg" er lik 10.

Eksempel 03: Nestet mens du er sløyfe

Her kommer det siste eksemplet. Vi har initialisert en variabel "var" med en verdi på 2. Bash -koden inneholder nestede “mens” løkker i.e., indre og ytre. Den ytre sløyfen sjekker hvis "var" -verdien er mindre enn 20, den vil vise den verdien og øke den med 2 til den nådde 20. Den indre sløyfen bruker den like store operatøren for å sjekke om verdien er lik 20 eller ikke. I så fall vil den vise den verdien og vise meldingen om at sløyfen slutter her. Bruddserklæringen brukes her for å bare avslutte programmet her.

Utførelsen av dette bash -programmet viser at den opprinnelige verdien “2” har vært økning med 2 til den når 20. Etter det har programmet blitt stoppet i henhold til bruddserklæringen.

Konklusjon:

Denne guiden har dukket opp med illustrasjonen av å implementere den nestede "while" -løkken i bash -manuset. Vi har ikke bare brukt eksemplene på nestet "mens" -løkken, men også singelen "mens" -løkken for å demonstrere det mer. Eksemplene inneholder enkle sammenligningsoperatører for å gjøre oppgaven.