logo

Bash While Loop

Ebben a témakörben bemutattuk, hogyan kell használni a while ciklus utasítást a Bash Scriptben.

A bash while ciklus vezérlőfolyamat utasításként definiálható, amely lehetővé teszi az adott parancskészlet ismételt végrehajtását mindaddig, amíg az alkalmazott feltétel igazra értékelődik. Például sokszor futtathatjuk az echo parancsot, vagy csak soronként olvashatunk egy szöveges fájlt, és az eredményt a while ciklus használatával dolgozhatjuk fel a Bashban.

A Bash While Loop szintaxisa

A Bash while ciklus a következő formátumú:

Rekha színész
 while [ expression ]; do commands; multiple commands; done 

A fenti szintaxis csak akkor alkalmazható, ha a kifejezés egyetlen feltételt tartalmaz.

Ha több feltétel is szerepel a kifejezésben, akkor a while ciklus szintaxisa a következő lesz:

 while [ expressions ]; do commands; multiple commands; done 

A while ciklus egysoros szintaxisa a következőképpen definiálható:

 while [ condition ]; do commands; done while control-command; do Commands; done 

A „while loop” utasításnak van néhány kulcsfontosságú pontja:

  • A feltétel ellenőrzése a parancsok végrehajtása előtt történik.
  • A 'while' hurok is képes minden olyan munka elvégzésére, mint a 'loop' esetében.
  • A „do” és a „done” közötti parancsok ismételten végrehajtásra kerülnek mindaddig, amíg a feltétel igaz.
  • A 'while' ciklus argumentumai logikai kifejezések is lehetnek.

Hogyan működik

A while ciklus egy korlátozott belépési hurok. Ez azt jelenti, hogy a feltétel ellenőrzésre kerül a while ciklus parancsainak végrehajtása előtt. Ha a feltétel kiértékelése igaz, akkor a feltételt követő parancskészlet végrehajtásra kerül. Ellenkező esetben a ciklus megszakad, és a programvezérlés a 'done' utasítást követő másik parancshoz kerül.

Bash While Loop példák

Íme néhány példa a bash while ciklusra:

Míg hurok egyetlen feltétellel

Ebben a példában a while ciklus egyetlen feltétellel kerül felhasználásra a kifejezésben. Ez a while ciklus alapvető példája, amely számsorokat nyomtat a felhasználói bevitel szerint:

Példa

 #!/bin/bash #Script to get specified numbers read -p 'Enter starting number: ' snum read -p 'Enter ending number: ' enum while [[ $snum -le $enum ]]; do echo $snum ((snum++)) done echo 'This is the sequence that you wanted.' 

Kimenet

Bash While Loop

Míg hurok több feltétellel

Az alábbiakban egy példa a while ciklusra, amely több feltételt tartalmaz a kifejezésben:

Példa

 #!/bin/bash #Script to get specified numbers read -p 'Enter starting number: ' snum read -p 'Enter ending number: ' enum while [[ $snum -lt $enum || $snum == $enum ]]; do echo $snum ((snum++)) done echo 'This is the sequence that you wanted.' 

Kimenet

eol pythonban
Bash While Loop

Infinite While Loop

A végtelen hurok olyan hurok, amelynek nincs vége vagy vége. Ha a feltétel kiértékelése mindig igaz, akkor végtelen hurkot hoz létre. A ciklus folyamatosan fut, amíg a CTRL+C billentyűkombinációval le nem állítja:

Példa

 #!/bin/bash #An infinite while loop while : do echo 'Welcome to Javatpoint.' done 

A fenti szkriptet egy sorba is írhatjuk:

 #!/bin/bash #An infinite while loop while :; do echo 'Welcome to Javatpoint.'; done 

Kimenet

Bash While Loop

Itt a beépített (:) parancsot használtuk, amely mindig igazat ad vissza. Használhatjuk a beépített true parancsot is végtelen ciklus létrehozásához, az alábbiak szerint:

Példa

java gyűjtemény
 #!/bin/bash #An infinite while loop while true do echo 'Welcome to Javatpoint' done 

Ez a bash szkript ugyanazt a kimenetet adja, mint egy fenti végtelen szkript.

Megjegyzés: A végtelen hurkok leállíthatók a CTRL+C billentyűkombinációval vagy a szkripten belüli feltételes kilépés hozzáadásával.

Míg a hurok megszakítási nyilatkozattal

A break utasítás használható a ciklus leállítására az alkalmazott feltételnek megfelelően. Például:

Példa

 #!/bin/bash #While Loop Example with a Break Statement echo 'Countdown for Website Launching...' i=10 while [ $i -ge 1 ] do if [ $i == 2 ] then echo 'Mission Aborted, Some Technical Error Found.' break fi echo '$i' (( i-- )) done 

Kimenet

A szkript szerint a ciklus tízszeres iterációra van rendelve. De van egy feltétel nyolcszori iteráció után, amely megszakítja az iterációt és befejezi a ciklust. A következő kimenet jelenik meg a szkript végrehajtása után.

Bash While Loop

Míg hurok folytatási nyilatkozattal

A folytatás utasítással kihagyható egy adott feltétel iterációja a while cikluson belül.

Példa

 #!/bin/bash #While Loop Example with a Continue Statement i=0 while [ $i -le 10 ] do ((i++)) if [[ '$i' == 5 ]]; then continue fi echo 'Current Number : $i' done echo 'Skipped number 5 using Continue Statement.' 

Kimenet

Bash While Loop

Míg Loop C-stílussal

A bash szkriptben a while ciklushoz hasonlóan írhatunk, mint C programozási nyelvben.

Példa

 #!/bin/bash #While loop example in C style i=1 while((i <= 10)) do echo $i let i++ done < pre> <p> <strong>Output</strong> </p> <img src="//techcodeview.com/img/bash-tutorial/46/bash-while-loop-6.webp" alt="Bash While Loop"> <h2>Conclusion</h2> <p>In this topic, we discussed how to use while loop statement in Bash to perform specific tasks.</p> <hr></=>