Šajā tēmā mēs esam parādījuši, kā Bash skriptā izmantot while loop paziņojumu.
The bash kamēr cilpa var definēt kā vadības plūsmas paziņojumu, kas ļauj izpildīt doto komandu kopu atkārtoti, kamēr pielietotais nosacījums tiek novērtēts kā patiess. Piemēram, mēs varam vairākas reizes palaist echo komandu vai vienkārši lasīt teksta failu rindiņu pa rindiņai un apstrādāt rezultātu, izmantojot Bash cilpu while.
Bash While Loop sintakse
Bash while cilpai ir šāds formāts:
vesels skaitlis līdz virknei Java
while [ expression ]; do commands; multiple commands; done
Iepriekš minētā sintakse ir piemērojama tikai tad, ja izteiksmē ir viens nosacījums.
Ja izteiksmē ir jāiekļauj vairāki nosacījumi, kamēr cilpas sintakse būs šāda:
while [ expressions ]; do commands; multiple commands; done
Nors cilpas vienas līnijas sintaksi var definēt kā:
while [ condition ]; do commands; done while control-command; do Commands; done
Ir daži galvenie paziņojuma “while loop” punkti:
- Pirms komandu izpildes tiek pārbaudīts stāvoklis.
- Cilpa “while” arī spēj veikt visu darbu, kā to var veikt “cilpa”.
- Komandas starp “do” un “done” tiek izpildītas atkārtoti, kamēr nosacījums tiek novērtēts kā patiess.
- Argumenti cilpai “while” var būt Būla izteiksme.
Kā tas strādā
Cilpa while ir ierobežota ievades cilpa. Tas nozīmē, ka nosacījums tiek pārbaudīts pirms while cilpas komandu izpildes. Ja nosacījums tiek novērtēts kā patiess, tiek izpildīta komandu kopa, kas seko šim nosacījumam. Pretējā gadījumā cilpa tiek pārtraukta, un programmas vadība tiek piešķirta otrai komandai, kas seko priekšrakstam “pabeigts”.
Bash While Loop piemēri
Tālāk ir sniegti daži bash while cilpas piemēri:
Kamēr cilpa ar vienu nosacījumu
Šajā piemērā cilpa while tiek izmantota ar vienu nosacījumu izteiksmē. Tas ir cilpas while pamata piemērs, kas izdrukās skaitļu sērijas atbilstoši lietotāja ievadei:
Piemērs
#!/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.'
Izvade
Kamēr cilpa ar vairākiem nosacījumiem
Tālāk ir parādīts cilpas while piemērs ar vairākiem nosacījumiem izteiksmē:
Piemērs
#!/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.'
Izvade
objekts Java
Infinite While Loop
Bezgalīga cilpa ir cilpa, kurai nav beigu vai beigu. Ja nosacījums vienmēr tiek novērtēts kā patiess, tas rada bezgalīgu cilpu. Cilpa tiks izpildīta nepārtraukti, līdz tā tiek piespiedu kārtā apturēta, izmantojot CTRL+C:
Piemērs
#!/bin/bash #An infinite while loop while : do echo 'Welcome to Javatpoint.' done
Mēs varam arī rakstīt iepriekš minēto skriptu vienā rindā kā:
#!/bin/bash #An infinite while loop while :; do echo 'Welcome to Javatpoint.'; done
Izvade
Šeit mēs esam izmantojuši iebūvēto komandu (:), kas vienmēr atgriež patieso vērtību. Mēs varam arī izmantot iebūvēto komandu true, lai izveidotu bezgalīgu cilpu, kā norādīts tālāk:
Piemērs
#!/bin/bash #An infinite while loop while true do echo 'Welcome to Javatpoint' done
Šis bash skripts nodrošinās arī tādu pašu izvadi kā iepriekšminētais bezgalīgais skripts.
Piezīme. Bezgalīgas cilpas var pārtraukt, izmantojot taustiņu kombināciju CTRL+C vai pievienojot skriptam nosacījumu izeju.
Kamēr cilpa ar pārtraukuma paziņojumu
Pārtraukuma paziņojumu var izmantot, lai apturētu cilpu atbilstoši piemērotajam nosacījumam. Piemēram:
Piemērs
#!/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
Izvade
virknē java
Saskaņā ar skriptu cilpa ir piešķirta atkārtošanai desmit reizes. Bet pēc astoņām iterācijas reizēm ir nosacījums, kas pārtrauks iterāciju un pārtrauks cilpu. Pēc skripta izpildes tiks parādīta šāda izvade.
Kamēr cilpa ar paziņojumu turpināt
Paziņojumu turpināt var izmantot, lai izlaistu iterāciju konkrētam nosacījumam while cilpas ietvaros.
Piemērs
#!/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.'
Izvade
Kamēr cilpa ar C Style
Mēs varam arī rakstīt while cilpu bash skriptā, kas ir tikpat līdzīga kā while cilpa C programmēšanas valodā.
Piemērs
#!/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></=>