logo

Izjave o zanki | Shell Script

Izjave o zanki v skriptni lupini: V programiranju bash lahko uporabite skupaj 3 stavke zanke

Kazalo



Za spreminjanje toka stavkov zanke se uporabljata dva ukaza:

  1. odmor
  2. nadaljevati

Njihovi opisi in sintaksa so naslednji:

Izjava `while` v skriptu lupine v Linuxu

Tukaj je ukaz ovrednoten in na podlagi nastale zanke se bo izvedel; če je ukaz dvignjen na false, se bo zanka prekinila to.



#/bin/bash while  do       done>

Izvedba zanke `While` v skriptu lupine.

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim looping.sh>

Looping.sh lahko zamenjate z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.



chmod +x looping.sh>

#/bin/bash

java rep

a=0

# Je manj kot operater

#Ponavljajte zanko do manj kot 10

medtem ko [ $a -lt 10 ]
narediti
# Natisnite vrednosti
odmev $a
# povečati vrednost
a=`izraz $a + 1`
Končano

Izhod:

Medtem ko Loop v Linuxu

Medtem ko Loop v Linuxu

Pojasnilo:

  • #/bin/bash> : Določa, da je treba skript interpretirati z lupino Bash.
  • a=0> : Inicializira spremenljivkoa>z vrednostjo 0.
  • while [ $a -lt 10 ]> : Sproži zanko while, ki se nadaljuje tako dolgo, kot je vrednosta>je manj kot 10.
  • do> : Označuje začetek telesa zanke.
  • echo $a> : Natisne trenutno vrednosta>konzolo.
  • a=> izraz $a + 1 : poveča vrednosta>od 1. Theexpr>ukaz se uporablja za aritmetične izraze.
  • done> : Označuje konec zanke.

Izjava `za` v lupinskem skriptu v Linuxu

Zanka for deluje na seznamih elementov. Ponavlja niz ukazov za vsak element na seznamu.
Tukaj je var ime spremenljivke, beseda1 do besedaN pa so zaporedja znakov, ločenih s presledki (besede). Vsakič, ko se izvede zanka for, se vrednost spremenljivke var nastavi na naslednjo besedo na seznamu besed, beseda1 do besedaN.

Sintaksa:

#/bin/bash for in  do       done>

Implementacija zanke `for` s stavkom `break` v skriptu Shell.

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim for.sh>

For.sh lahko zamenjate z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x for.sh>

#/bin/bash

#Začetek zanke for

za a v 1 2 3 4 5 6 7 8 9 10
narediti

# če je a enako 5 prekinite zanko
če [ $a == 5 ]
potem
odmor
biti

# Natisnite vrednost
echo Ponovitev št. $a
Končano

Izhod:

Prekini stavek za Loop v linuxu

Prekini stavek za Loop v linuxu

Pojasnilo:

  • #/bin/bash>: Določa, da je treba skript interpretirati z lupino Bash.
  • for a in 1 2 3 4 5 6 7 8 9 10>: Sproži zanko for, ki ponovi vrednosti od 1 do 10 in vsako vrednost dodeli spremenljivkia>v vsaki ponovitvi.
  • do>: Označuje začetek telesa zanke.
  • if [ $a == 5 ]>: preveri, ali je trenutna vrednosta>je enako 5.
    • then>: Označi začetek pogojnega bloka, ki naj se izvede, če je pogoj resničen.
      • break>: Izhod iz zanke, če je pogoj resničen.
    • fi>: Označi konec pogojnega bloka.
  • echo 'Iteration no $a'>: Natisne sporočilo, ki označuje trenutno številko ponovitve.
  • done>: Označuje konec zanke.

Skript nastavi zanko for, ki ponavlja vrednosti od 1 do 10. Med vsako ponovitvijo preveri, ali je vrednosta>je enako 5. Če je, se zanka zapusti z uporabobreak>izjava. V nasprotnem primeru natisne sporočilo, ki označuje trenutno številko ponovitve. Zanka se nadaljuje, dokler ne dokonča vseh iteracij ali dokler ne naleti na stavek break.

Implementacija zanke `za` s stavkom `nadaljuj` v lupinskem skriptu.

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim for_continue.sh>

For_continue.sh lahko zamenjate z želenim imenom.

režiser Karan Johar

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x for_continue.sh>

#/bin/bash

za a v 1 2 3 4 5 6 7 8 9 10
narediti

# če je a = 5, potem nadaljujte z zanko in
# ne premakni se v 8. vrstico

če [ $a == 5 ]
potem
nadaljevati
biti
echo Ponovitev št. $a
Končano

Izhod:

stavek continue v zanki for v Linuxu

stavek continue v zanki for v Linuxu

Pojasnilo:

  • #/bin/bash> : Določa, da je treba skript interpretirati z lupino Bash.
  • for a in 1 2 3 4 5 6 7 8 9 10> : Sproži zanko for, ki ponovi vrednosti od 1 do 10 in vsako vrednost dodeli spremenljivkia>v vsaki ponovitvi.
  • do> : Označuje začetek telesa zanke.
  • if [ $a == 5 ]> : preveri, ali je trenutna vrednosta>je enako 5.
    • then> : Označi začetek pogojnega bloka, ki naj se izvede, če je pogoj resničen.
      • continue> : preskoči preostali del telesa zanke in preide na naslednjo ponovitev, če je pogoj resničen.
    • fi> : Označi konec pogojnega bloka.
  • echo 'Iteration no $a'> : Natisne sporočilo, ki označuje trenutno številko ponovitve. Ta vrstica se preskoči, čea>je enako 5 zaradicontinue>izjava.
  • done> : Označuje konec zanke.

Skript nastavi zanko for, ki ponavlja vrednosti od 1 do 10. Med vsako ponovitvijo preveri, ali je vrednosta>je enako 5. Če je, se zanka nadaljuje z naslednjo ponovitvijo brez izvedbe preostalih stavkov v telesu zanke. V nasprotnem primeru natisne sporočilo, ki označuje trenutno številko ponovitve. Zanka se nadaljuje, dokler ne zaključi vseh ponovitev.

Izjava `do` v lupinskem skriptu v Linuxu

Zanka dokler se ne izvede tolikokrat, kolikor je pogoj/ukaz ocenjen kot false. Zanka se konča, ko pogoj/ukaz postane resničen.

Sintaksa:

#/bin/bash until  do       done>

Implementacija zanke `until` v skriptu Shell

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim until.sh>

Zamenjate lahko do. sh z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x until.sh>

#/bin/bash

a=0

# -gt je večji od operatorja
#Ponavljajte zanko, dokler a ni večje od 10

do [ $a -gt 10 ]
narediti

# Natisnite vrednosti
odmev $a

# povečati vrednost
a=`izraz $a + 1`
Končano

Izhod:

Unitl zanka v Linuxu

Zanka Until v Linuxu

Pojasnilo:

  • #/bin/bash> : Določa, da je treba skript interpretirati z lupino Bash.
  • a=0> : Inicializira spremenljivkoa>z vrednostjo 0.
  • until [ $a -gt 10 ]> : Sproži zanko dokler se ne nadaljuje, dokler je vrednosta>ni večji od 10.
  • do> : Označuje začetek telesa zanke.
  • echo $a> : Natisne trenutno vrednosta>konzolo.
  • a=> izraz $a + 1 : poveča vrednosta>od 1. Theexpr>ukaz se uporablja za aritmetične izraze.
  • done> : Označuje konec zanke.

Opomba: Skriptna lupina je jezik, ki razlikuje med velikimi in malimi črkami, kar pomeni, da je treba med pisanjem skriptov upoštevati pravilno sintakso.

Primeri izjav o zanki

1. Ponavljanje barv z uporabo zanke For

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim color.sh>

Color.sh lahko zamenjate z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x color.sh>

#/bin/bash

BARVE=rdeča zelena modra

# zanka for se nadaljuje, dokler ne prebere vseh vrednosti iz BARV

za COLOR v $COLORS
narediti
echo COLOR: $COLOR
Končano

Izhod:

Za do v Linuxu

Za do v Linuxu

Pojasnilo:

in.naslednja java
  • Inicializacija barv:
    • COLORS='red green blue'>: Inicializira spremenljivko z imenomCOLORS>s seznamom barvnih vrednosti (rdeča, zelena in modra), ločenih s presledki.
  • Za ponovitev zanke:
    • for COLOR in $COLORS>: sproži zanko for, ki ponovi vsako vrednost vCOLORS>spremenljivka.
      • Telo zanke:
        • echo 'COLOR: $COLOR'>: Natisne sporočilo za vsako barvo s prikazom trenutne vrednosti barve.
    • Zanka se nadaljuje, dokler ne obdela vseh vrednosti vCOLORS>spremenljivka.

Ta primer prikazuje preprosto zanko for v Bashu, ki ponavlja seznam barv, shranjenih vCOLORS>spremenljivka. Zanka za vsako barvo natisne sporočilo, ki označuje trenutno barvo, ki se obdeluje. Zanka se ponavlja, dokler niso izčrpane vse barvne vrednosti.

2. Ustvarjanje neskončne zanke z while true v skriptu Shell

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim infinite.sh>

Infinite.sh lahko zamenjate z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x infinite.sh>

#/bin/bash

medtem ko je res
narediti

# Ukaz za izvedbo
# spanje 1 pomeni, da spi 1 sekundo
echo Živjo, jaz sem neskončna zanka
spati 1
Končano

koliko tipk imajo tipkovnice

Izhod:

neskončna zanka v linuxu

neskončna zanka v linuxu

Pojasnilo:

Struktura neskončne zanke:

  • while true>: Sproži zanko while, ki se kot pogoj nadaljuje v nedogledtrue>je vedno res.
    • Telo zanke:
      • echo 'Hi, I am infinity loop'>: Natisne sporočilo, ki označuje, da je skript v neskončni zanki.
      • sleep 1>: Začasno ustavi izvajanje zanke za 1 sekundo pred naslednjo ponovitvijo.
  • Zanka se nadaljuje v nedogled in ponavljajoče izvaja ukaze v svojem telesu.

Ta primer prikazuje ustvarjanje neskončne zanke z uporabo konstrukcije while true v Bashu. Zanka nenehno natisne sporočilo, ki označuje njen status neskončne zanke in vključuje ukaz spanja 1, kar povzroči enosekundni zamik med ponovitvami. Neskončne zanke se pogosto uporabljajo za procese, ki morajo teči neprekinjeno, dokler niso ročno prekinjeni.

3. Interaktivna zanka za potrditev imena

Najprej ustvarimo datoteko z urejevalnikom besedil v Linuxu. V tem primeru uporabljamo urejevalnik `vim`.

vim name.sh>

Ime.sh lahko zamenjate z želenim imenom.

Nato naredimo naš skript izvršljiv z ukazom `chmod` v Linuxu.

chmod +x name.sh>

#/bin/bash

PRAVILNO=n
medtem ko [$CORRECT == n]
narediti

Zanka # se prekine, ko vnesete y, tj. ko je vaše ime pravilno
# -p pomeni poziv, ki zahteva vnos

read -p Vnesite svoje ime: IME
read -p Ali je ${NAME} pravilno? PRAVILNO
Končano

Izhod:

Interaktivni skript v Linuxu

Interaktivni skript v Linuxu

Pojasnilo:

  • Inicializacija:
    • CORRECT=n>: Inicializira spremenljivko z imenomCORRECT>z vrednostjo n. Ta spremenljivka se uporablja za krmiljenje zanke.
  • Interaktivna zanka:
    • while [ '$CORRECT' == 'n' ]>: Sproži zanko while, ki se nadaljuje, dokler je vrednostCORRECT>je enako n.
      • Telo zanke:
        • read -p 'Enter your name:' NAME>: uporabnika pozove, naj vnese svoje ime in shrani vnos vNAME>spremenljivka.
        • read -p 'Is ${NAME} correct? ' CORRECT>: od uporabnika zahteva, da potrdi, ali je vneseno ime pravilno, in posodobiCORRECT>ustrezno spremenljivka.
    • Zanka se nadaljuje, dokler uporabnik ne vnese y (ki označuje pravilno ime).

Ta primer prikazuje interaktivno zanko, ki od uporabnika zahteva, da vnese svoje ime in nato zahteva potrditev. Zanka se nadaljuje, dokler uporabnik ne potrdi, da je vneseno ime pravilno z vnosom y. Zanka uporablja ` read> `>ukaz za uporabniški vnos in posodobi ` CORRECT> `>spremenljivka za nadzor pretoka zanke.

Zaključek

V tem članku smo razpravljali o stavkih o zankah v skriptih Bash, ki pokrivajowhile>,for>, inuntil>zanke. Predstavlja uporabobreak>incontinue>stavkov za spreminjanje obnašanja zanke. Praktični primeri ponazarjajo izvajanje zank, vključno s ponavljanjem barvnih vrednosti, ustvarjanjem neskončnih zank in gradnjo interaktivne zanke za preverjanje uporabniškega vnosa. Priročnik ponuja jedrnat, a informativen vir za razumevanje in uporabo konstrukcij zanke v skriptih Bash.