Bash Kanggo Loop lan Nalika Loop Tuladhane

Kaya basa skrip liyane, Bash uga ndukung puteran.

Loop pancen cocog kanggo nindakake tugas sing bola-bali. Kita bisa nggunakake loop lan nalika daur ulang ing skrip Bash.



Bash Kanggo Loop

Sintaks saka loop yaiku:


for VARIABLE in PARAM1 PARAM2 PARAM3 do // scope of for loop done

Loop kanggo loop bakal dieksekusi kanggo saben parameter. Parameter kasebut bisa uga nomer, sawetara nomer utawa senar, lsp.

Tuladha Bash Kanggo Loop

Conto sederhana iki nyithak nomer, 1 nganti 5 nggunakake loop:


#!/bin/bash for i in 1 2 3 4 5 do echo '$i' done

Output:



1 2 3 4 5

Bash For Loop - Cetak Nomer Nomer

Kita uga bisa nemtokake macem-macem nomer kanggo muter:

Contone:

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

Output:


1 2 3 4 5

Loop Bash Liwat Senar

Kita uga bisa nggunakake loop kanggo daur ulang liwat parameter senar:

#!/bin/bash for day in MON TUE WED THU FRI SAT SUN do echo '$day' done

Output:

MON TUE WED THU FRI SAT SUN

Bash For Loop - Gaya C

Kita uga bisa nggunakake sintaks gaya C kanggo nulis loop. Contone:

#!/bin/bash for ((i=1; i<=5; i++)) do echo '$i' done

Output


1 2 3 4 5

Kanggo Loop Print Print File ing Direktori Saiki

Kanggo dhaptar kabeh file ing direktori saiki nggunakake bash for loop, kita nggunakake:

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

Bash Nalika Loop

Bash uga ndhukung nalika daur ulang. Nalika daur ulang nglakokake instruksi nganti kondhisi dievaluasi dadi bener.

Sintaks kanggo loop Bash yaiku:

while [condition] do //execute instructions done

Kondisi kasebut dievaluasi sadurunge nindakake instruksi. Mula, kudu duwe sarana kanggo nganyari kahanan, saupama gelung kasebut bakal ditindakake nganti salawas-lawase.


Tuladha Bash Nalika Loop

Ing ngisor iki minangka loop nalika sederhana sing nyetak nomer 1 nganti 5. loop kasebut dipungkasi nalika angka luwih saka 5.

#!/bin/bash num=1 while [ $num -le 5 ] do echo '$num' let num++ done

Bash C-Style Nalika Loop

Kaya loop kanggo loop, kita uga bisa nulis bash nalika loop nganggo basa gaya C.

Contone:

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