I-Bash ye-Loop kunye ne-Loop Examples

Njengalo naluphi na ulwimi olubhaliweyo, iBash ikwanenkxaso ye-loops.

Imiphetho ilungile ngokwenza imisebenzi ephindaphindwayo. Singazisebenzisa ii-loops kwaye ngelixa siphambuka kwizikripthi zethu zeBash.



IBash yeLoop

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.

I-Bash yoMzekelo weLoop

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

I-Bash ye-Loop-Printa uluhlu lweeNombolo

Singaxela uluhlu lwamanani onokuluvula:

Umzekelo:

for i in {1..5} do echo '$i' done

Iziphumo:


1 2 3 4 5

I-Bash Loop Ngokusebenzisa imitya

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

I-Bash ye-Loop-C Uhlobo

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

NgeLoop yokuPrinta uLuhlu lweeFayile kulawulo lwangoku

Ukudwelisa zonke iifayile kulawulo lwangoku usebenzisa i-bash for loop, sisebenzisa:

#!/bin/bash for fname in ./ do ls -l $fname done

I-Bash Ngelixa iLoop

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.


I-Bash ngelixa Umzekelo weLoop

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

Isitayile seBash C ngelixa iLoop

Njengokuloba, sinokubhala ibhasi ngelixa ujikeleza kwisitayile se-C njengolwimi.

Umzekelo:

#!/bin/bash num=1 while((num <= 5)) do echo $num let num++ done