Kako uporabljati izjave o prekinitvi in nadaljevanju v skriptih lupine
V tem članku si bomo ogledali, kako uporabiti odmor in nadaljevati v bash skriptih. V bash imamo tri konstrukcije glavne zanke (za, medtem, dokler). Izjave Break and Continu so vgrajene v bash in se uporabljajo za spreminjanje pretoka vaših zank. Ta koncept break and continue je na voljo v priljubljenih programskih jezikih, kot je Python.
$ type -a break continue
Iz zanke zapustite izjavo Break
Stavek break bo izstopil iz zanke in nadzor se bo prenesel na naslednji stavek v zanki. Zaženete lahko ukaz za pomoč, da dobite nekaj informacij o stavku break.
$ help break
Osnovna sintaksa break.
$ break [n] n is optional
Oglejte si spodnji primer. To je preprosta zanka for, ki se v koraku po koraku ponovi v obsegu vrednosti od 1 do 20. Pogojni stavek bo ovrednotil izraz in ko bo ta vrednost resnična ($val = 9), bo zagnala izjavo break in zanka se zaključi, preskoči preostale ponovitve.
#!/usr/bin/bash for val in {1..20..2} do If [[ $val -eq 9 ]] then break else echo "printing ${val}" fi done
Preskočite iteracijo z nadaljevanjem izjave
Kaj pa, če ne želite popolnoma izstopiti iz zanke, ampak preskočiti blok kode, ko je izpolnjen določen pogoj? To lahko storite z izjavo nadaljevanja. Stavek continue bo preskočil izvajanje bloka kode, ko bo izpolnjen določen pogoj in se bo kontrolnik vrnil v stavek zanke za naslednjo ponovitev.
Za dostop do pomoči.
$ help continue
Oglejte si spodnji primer. To je isti primer, ki smo ga uporabili za predstavitev stavka break. Zdaj, ko je Val ovrednoten z devet, bo izjava continue preskočila vse preostale bloke kode in kontrolnik posredovala zanki for za naslednjo ponovitev.
#!/usr/bin/bash for val in {1..20..2} do If [[ $val -eq 9 ]] then continue fi echo "printing ${val}" done
Če ste vedeli, da je python, je vedenje break in continue enako tudi v pythonu. Toda python ponuja še en stavek za nadzor zanke, imenovan pass.
Pass je kot ničelna izjava in tolmač jo bo prebral, vendar ne bo izvedel nobene operacije. Preprosto povzroči nobeno delovanje. Bash ne ponuja podobne izjave, vendar lahko to vedenje posnemamo z uporabo resnične ključne besede ali dvopičja (:). Tako true kot dvopičje je vgrajeno v lupino in ne izvaja nobene operacije.
$ type -a : true
Oglejte si spodnji primer. Ko pogojni stavek oceni kot resničnega ($val = 9), potem pravi stavek ne bo naredil ničesar in zanka se bo nadaljevala.
#!/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 ta članek. Radi bi slišali vaše dragocene povratne informacije in nasvete.