Kako koristiti naredbe Break i Continue u Shell skriptama
U ovom članku ćemo pogledati kako koristiti prekid i nastavak u bash skriptama. U bashu imamo tri glavne konstrukcije petlje (za, dok, do). Izjave Break i continue ugrađene su u bash i koriste se za promjenu toka vaših petlji. Ovaj koncept prekida i nastavka dostupan je u popularnim programskim jezicima kao što je Python.
type -a break continue
Izađite iz petlje naredbom Break
Naredba break izaći će iz petlje i kontrola se prenosi na sljedeću naredbu u petlji. Možete pokrenuti naredbu help da dobijete neke informacije o izjavi break.
help break
Osnovna sintaksa prekida.
break [n]
n is optional
Pogledajte primjer u nastavku. Ovo je jednostavna for petlja koja ponavlja niz vrijednosti od 1 do 20 u inkrementalnom koraku od 2. Uvjetna izjava će procijeniti izraz i kada je true($val=9) tada pokrenut će naredbu break i petlja će biti prekinuta preskačući preostale iteracije.
#!/usr/bin/bash
for val in {1..20..2}
do
If [[ $val -eq 9 ]]
then
break
else
echo "printing ${val}"
fi
done
Preskoči iteraciju s naredbom continue
Što ako ne želite potpuno izaći iz petlje, ali preskočite blok koda kada se ispuni određeni uvjet? To se može učiniti s naredbom nastavi. Naredba nastavi preskočit će izvršenje bloka koda kada se ispuni određeni uvjet i kontrola se vraća na naredbu petlje za sljedeću iteraciju.
Za pristup pomoći.
help continue
Pogledajte primjer u nastavku. Ovo je isti primjer koji smo koristili za demonstraciju break naredbe. Sada kada se Val procijeni na devet, tada će naredba continue preskočiti sve preostale blokove koda i proslijediti kontrolu for petlji 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, tada je ponašanje prekida i nastavaka isto i u pythonu. Ali python nudi još jednu naredbu za kontrolu 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 daje sličnu izjavu, ali možemo emulirati ovo ponašanje pomoću ključne riječi true ili dvotočke(:). I true i colon ugrađeni su u ljusku i ne izvode nikakve operacije.
type -a : true
Pogledajte primjer u nastavku. Kada se uvjetna naredba procijeni kao istinita ($val=9) tada točna naredba 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 sve savjete koje imate.