Njengalo naluphi na ulwimi olubhaliweyo, iBash ikwanenkxaso ye-loops.
Imiphetho ilungile ngokwenza imisebenzi ephindaphindwayo. Singazisebenzisa ii-loops kwaye ngelixa siphambuka kwizikripthi zethu zeBash.
Is syntax yeluphu yile:
for VARIABLE in PARAM1 PARAM2 PARAM3 do // scope of for loop done
Ilogo iya kuphumeza iparameter nganye. Iiparameter zinokuba ngamanani, uluhlu lwamanani okanye imitya, njl.
Lo mzekelo ulula uprinta amanani, 1 ukuya ku-5 usebenzisa iluphu:
#!/bin/bash for i in 1 2 3 4 5 do echo '$i' done
Iziphumo:
1 2 3 4 5
Singaxela uluhlu lwamanani onokuluvula:
Umzekelo:
for i in {1..5} do echo '$i' done
Iziphumo:
1 2 3 4 5
Sinokusebenzisa iluphu yokuphuma ngokusebenzisa iiparameter zomtya:
#!/bin/bash for day in MON TUE WED THU FRI SAT SUN do echo '$day' done
Iziphumo:
MON TUE WED THU FRI SAT SUN
Sinokusebenzisa isitayile se-C ukubhala i-loop. Umzekelo:
#!/bin/bash for ((i=1; i<=5; i++)) do echo '$i' done
Iziphumo
1 2 3 4 5
Ukudwelisa zonke iifayile kulawulo lwangoku usebenzisa i-bash for loop, sisebenzisa:
#!/bin/bash for fname in ./ do ls -l $fname done
I-Bash ikwaxhasa ngelixa ii-loops. Ngelixa iilogo zisenza iseti yemiyalelo kude kube imeko ivavanye inyani.
Is syntax yeBhash ngelixa iluphu yile:
while [condition] do //execute instructions done
Imeko iyavavanywa ngaphambi kokwenza nayiphi na imiyalelo. Ke ngoko, kubalulekile ukuba neendlela zokuhlaziya imeko, kungenjalo iluphu iya kwenza ngonaphakade.
Oku kulandelayo iluphu elilula ngelixa eliprinta amanani ukusuka ku-1 ukuya ku-5.
#!/bin/bash num=1 while [ $num -le 5 ] do echo '$num' let num++ done
Njengokuloba, sinokubhala ibhasi ngelixa ujikeleza kwisitayile se-C njengolwimi.
Umzekelo:
#!/bin/bash num=1 while((num <= 5)) do echo $num let num++ done