Kif tuża dikjarazzjonijiet Break and Continue fi Shell Scripts
F'dan l-artikolu, se nagħtu ħarsa lejn kif tuża waqfa u tkompli fl-iskripts bash. F'bash, għandna tliet kostruzzjonijiet ewlenin tal-linja (għal, filwaqt li, sakemm). Break and continue statements huma bash builtin u użati biex ibiddlu l-fluss tal-loops tiegħek. Dan il-kunċett ta 'break and continue huma disponibbli f'lingwi ta' programmar popolari bħal Python.
$ type -a break continue
Ħruġ mill-linja bi Break Statement
Id-dikjarazzjoni tal-waqfien se toħroġ mill-linja u l-kontroll jiġi mgħoddi għad-dikjarazzjoni li jmiss fil-linja. Tista' tmexxi l-kmand tal-għajnuna biex tikseb xi informazzjoni dwar id-dikjarazzjoni tal-waqfa.
$ help break
Is-sintassi bażika tal-waqfa.
$ break [n] n is optional
Agħti ħarsa lejn l-eżempju hawn taħt. Dan huwa sempliċi for loop li jtenni fuq firxa ta’ valuri minn 1 sa 20 f’pass inkrementali ta’ 2. Id-dikjarazzjoni kondizzjonali se tevalwa l-espressjoni u meta tkun vera ($val = 9) allura se tħaddem id-dikjarazzjoni tal-break u il-linja se tintemm taqbeż l-iterazzjonijiet li fadal.
#!/usr/bin/bash for val in {1..20..2} do If [[ $val -eq 9 ]] then break else echo "printing ${val}" fi done
Aqbeż Iterazzjoni b'Dikjarazzjoni tkompli
X'jiġri jekk ma tridx toħroġ kompletament mill-linja imma taqbeż il-blokk tal-kodiċi meta tiġi sodisfatta ċerta kundizzjoni? Dan jista' jsir b'dikjarazzjoni ta' tkomplija. Id-dikjarazzjoni continue se taqbeż l-eżekuzzjoni tal-blokka tal-kodiċi meta tiġi sodisfatta ċerta kundizzjoni u l-kontroll jiġi mgħoddi lura lid-dikjarazzjoni tal-linja għall-iterazzjoni li jmiss.
Biex taċċessa għajnuna.
$ help continue
Agħti ħarsa lejn l-eżempju hawn taħt. Dan huwa l-istess eżempju li użajna biex nuru l-istqarrija tal-waqfien. Issa meta Val jiġi evalwat għal disgħa allura d-dikjarazzjoni tkompli taqbeż il-blokki kollha tal-kodiċi li jifdal u tgħaddi l-kontroll għal for loop għall-iterazzjoni li jmiss.
#!/usr/bin/bash for val in {1..20..2} do If [[ $val -eq 9 ]] then continue fi echo "printing ${val}" done
Jekk kont taf python allura break u kompli l-imġieba hija l-istess f'python ukoll. Iżda python jipprovdi dikjarazzjoni oħra ta 'kontroll tal-linja msejħa pass.
Pass huwa bħal dikjarazzjoni nulla u l-interpretu se jaqrah iżda ma jwettaq l-ebda operazzjoni. Sempliċement jirriżulta fl-ebda operazzjoni. Bash ma jipprovdix dikjarazzjoni simili iżda nistgħu nimitaw din l-imġieba billi tuża keyword vera jew kolon (:). Kemm il-veru kif ukoll il-kolon huma mibnija fil-qoxra u ma jwettqu l-ebda operazzjoni.
$ type -a : true
Agħti ħarsa lejn l-eżempju hawn taħt. Meta dikjarazzjoni kondizzjonali tiġi evalwata bħala vera ($val = 9) allura l-istqarrija vera ma tagħmel xejn u l-linja se tkompli.
#!/usr/bin/bash for val in {1..20..2} do If [[ $val -eq 9 ]] then true fi echo "printing ${val}" done
Dak hu għal dan l-artikolu. Nixtiequ nisimgħu l-feedback siewi tiegħek u kwalunkwe pariri li għandek.