Njenganoma yiluphi olunye ulimi lokubhala, iBash nayo inokwesekwa kwama-loops.
Amaluphu ahle ngokwenza imisebenzi ephindaphindwayo. Singazisebenzisela ama-loops futhi ngenkathi siphambuka kwizikripthi zethu zeBash.
I-syntax ye-loop yile:
for VARIABLE in PARAM1 PARAM2 PARAM3 do // scope of for loop done
I-loop izosebenzela ipharamitha ngayinye. Amapharamitha angaba izinombolo, ububanzi bezinombolo noma izintambo, njll.
Lesi sibonelo esilula siphrinta izinombolo, 1 kuye ku-5 sisebenzisa i-loop:
#!/bin/bash for i in 1 2 3 4 5 do echo '$i' done
Lokukhipha:
1 2 3 4 5
Futhi singachaza uhla lwezinombolo ezizodlula kuzo:
Ngokwesibonelo:
for i in {1..5} do echo '$i' done
Lokukhipha:
1 2 3 4 5
Singasebenzisa futhi iluphu ukuvula ngamapharamitha wentambo:
#!/bin/bash for day in MON TUE WED THU FRI SAT SUN do echo '$day' done
Lokukhipha:
MON TUE WED THU FRI SAT SUN
Singasebenzisa futhi i-syntax yesitayela se-C ukubhala i-loop. Ngokwesibonelo:
#!/bin/bash for ((i=1; i<=5; i++)) do echo '$i' done
Umphumela
1 2 3 4 5
Ukubala wonke amafayela enkombeni yamanje usebenzisa i-bash for loop, sisebenzisa:
#!/bin/bash for fname in ./ do ls -l $fname done
IBash nayo iyasekela ngenkathi iluphu. Ngenkathi izingodo zisebenzisa isethi yemiyalo kuze kube yilapho isimo sihlola ukuthi siyiqiniso.
Isi syntax seBash ngenkathi iluphu ingu:
while [condition] do //execute instructions done
Isimo sihlaziywa ngaphambi kokwenza noma imiphi imiyalelo. Ngakho-ke, kuyadingeka ukuthi ube nezindlela zokuvuselela isimo, ngaphandle kwalokho i-loop izosebenza ingunaphakade.
Okulandelayo iluphu elula ngenkathi iphrinta izinombolo 1 kuye ku-5. I-loop iyanqanyulwa lapho inombolo ingaphezu kuka-5.
#!/bin/bash num=1 while [ $num -le 5 ] do echo '$num' let num++ done
Njenge-loop, singabhala futhi i-bash ngenkathi ilula ngesitayela se-C njengolimi.
Ngokwesibonelo:
#!/bin/bash num=1 while((num <= 5)) do echo $num let num++ done