Kako koristiti Break i Continue izjave u shell skriptama
U ovom članku ćemo pogledati kako koristiti prekid i nastavak u bash skriptama. U bash-u imamo tri glavne konstrukcije petlje (for, while, until). Naredbe Break i continue su ugrađene u bash i koriste se za promjenu toka vaših petlji. Ovaj koncept prekida i nastavljanja dostupan je u popularnim programskim jezicima kao što je Python.
type -a break continue
Izađite iz petlje s naredbom Break
Naredba break će izaći iz petlje i kontrola se prenosi na sljedeći izraz u petlji. Možete pokrenuti naredbu help da dobijete neke informacije o naredbi break.
help break
Osnovna sintaksa break.
break [n]
n is optional
Pogledajte primjer u nastavku. Ovo je jednostavna for petlja koja se ponavlja u rasponu vrijednosti od 1 do 20 u inkrementalnom koraku od 2. Uslovna izjava će procijeniti izraz i kada je true($val=9) tada pokrenuće naredbu break i petlja će biti prekinuta preskakanjem preostalih iteracija.
#!/usr/bin/bash
for val in {1..20..2}
do
If [[ $val -eq 9 ]]
then
break
else
echo "printing ${val}"
fi
done
Preskočite iteraciju sa naredbom continue
Što ako ne želite potpuno izaći iz petlje, već preskočite blok koda kada se ispuni određeni uvjet? Ovo se može uraditi sa continue naredbom. Naredba continue će preskočiti izvršenje bloka koda kada se ispuni određeni uvjet i kontrola se vrati na naredbu petlje za sljedeću iteraciju.
Za pristup pomoći.
help continue
Pogledajte primjer u nastavku. Ovo je isti primjer koji smo koristili da demonstriramo naredbu break. Sada kada se Val procijeni na devet, onda će naredba continue preskočiti sve preostale blokove koda i prenijeti kontrolu u for petlju za sljedeću iteraciju.
#!/usr/bin/bash
for val in {1..20..2}
do
If [[ $val -eq 9 ]]
then
continue
fi
echo "printing ${val}"
done
Ako ste poznavali python onda je ponašanje prekini i nastavi isto iu pythonu. Ali python pruža još jednu kontrolnu naredbu petlje koja se zove pass.
Pass je kao null izjava i tumač će je pročitati, ali neće izvršiti nikakvu operaciju. To jednostavno rezultira bez operacije. Bash ne pruža sličnu izjavu, ali možemo oponašati ovo ponašanje koristeći istinitu ključnu riječ ili dvotočku(:). I true i colon su ugrađeni u ljusku i ne izvode nikakvu operaciju.
type -a : true
Pogledajte primjer u nastavku. Kada se uslovni izraz procijeni kao true($val=9) tada izraz true neće učiniti ništa i petlja će se nastaviti.
#!/usr/bin/bash
for val in {1..20..2}
do
If [[ $val -eq 9 ]]
then
true
fi
echo "printing ${val}"
done
To je to za ovaj članak. Voljeli bismo čuti vaše vrijedne povratne informacije i savjete koje imate.