Loop adalah salah satu konsep mendasar dalam pemrograman. Di Bash, loop memungkinkan kita menjalankan serangkaian perintah berulang kali tanpa menulis kode yang sama berulang-ulang. Tiga jenis loop dasar di Bash adalah for, while, dan until. Halaman ini membahas dasar-dasar loop for dan penggunaan break serta continue untuk mengendalikan alur eksekusi.

1. Sintaks Dasar for

Loop for di Bash mengiterasi sebuah daftar (list) item dan menjalankan perintah untuk setiap item tersebut.

for item in [DAFTAR]
do
  # PERINTAH
done

Daftar bisa berupa string yang dipisahkan spasi, rentang angka, output perintah, array, atau argumen dari baris perintah.

Contoh: Loop melalui string

for element in Hydrogen Helium Lithium Beryllium
do
  echo "Element: $element"
done

Contoh: Loop melalui rentang angka dengan ekspansi brace

for i in {0..3}
do
  echo "Number: $i"
done

Rentang dengan kenaikan (increment) — Bash 4+

for i in {0..20..5}
do
  echo "Number: $i"
done

Contoh: Loop melalui elemen array

BOOKS=('In Search of Lost Time' 'Don Quixote' 'Ulysses' 'The Great Gatsby')

for book in "${BOOKS[@]}"; do
  echo "Book: $book"
done

2. for Gaya C (C-style)

Bentuk gaya C memberi kontrol lebih pada inisialisasi variabel, kondisi, dan langkah setiap iterasi.

for (( INITIALISASI; KONDISI; LANGKAH ))
do
  # PERINTAH
done

Contoh:

for ((i = 0; i <= 1000; i++)); do
  echo "Counter: $i"
done

3. Loop Bersarang (Nesting Loops)

Loop dapat ditempatkan di dalam loop lain. Ini berguna saat setiap iterasi loop luar harus menjalankan seluruh iterasi loop dalam.

for f in file_{1..3}; do
  for j in server_{1..3}; do
    echo "Copying file $f to server $j"
    # perintah untuk menyalin file, misal: scp "$f" "user@$j:/path/"
  done
done

4. Mengendalikan Alur: break dan continue

break — Menghentikan Loop

break menghentikan eksekusi loop saat kondisi tertentu terpenuhi, lalu eksekusi dilanjutkan setelah blok done.

for element in Hydrogen Helium Lithium Beryllium; do
  if [[ "$element" == "Lithium" ]]; then
    break
  fi
  echo "Element: $element"
done

echo "All Done!"

continue — Lewati Iterasi Saat Ini

continue menghentikan iterasi saat ini dan langsung melompat ke iterasi berikutnya.

for i in {1..5}; do
  if [[ "$i" == "2" ]]; then
    continue
  fi
  echo "Number: $i"
done

5. Contoh Praktis

a) Mengganti spasi dalam nama file menjadi underscore

for file in *\ *; do
  mv -- "$file" "${file// /_}"
done
  • *\ * → memilih file yang mengandung spasi.
  • ${file// /_} → mengganti semua spasi menjadi underscore.

b) Mengganti ekstensi .jpeg menjadi .jpg pada semua file

for file in *.jpeg; do
  mv -- "$file" "${file%.jpeg}.jpg"
done
  • *.jpeg → memilih semua file dengan ekstensi .jpeg.
  • ${file%.jpeg} → menghapus akhiran .jpeg dari nama file.

Kesimpulan

Loop for di Bash memudahkan otomatisasi tugas berulang dengan mengiterasi daftar item: string, angka, array, atau output perintah. Gunakan bentuk gaya C untuk kontrol yang lebih granuler. Manfaatkan break dan continue untuk mengatur alur iterasi, serta terapkan pada kasus nyata seperti penamaan file massal atau konversi ekstensi.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rata rata rating 4 / 5. Jumlah rate 1

Yuk Rate 5 Artikel Ini!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Pilot

Drove Jetorbit to be the best technology solution for business every human on planet.

Bagikan:

Tags:

Leave a Comment