For Loop di Bash
Loop adalah salah satu konsep dasar bahasa pemrograman. Loop berguna saat Anda ingin menjalankan serangkaian perintah berulang kali hingga kondisi tertentu tercapai. Dalam bahasa skrip seperti Bash, loop berguna untuk mengotomatiskan tugas yang berulang. Ada tiga konstruksi loop dasar dalam skrip Bash, for loop, while loop, until loop. Dalam tutorial ini, kita akan membahas dasar-dasar for loop di Bash. Kami juga akan menunjukkan kepada Anda bagaimana menggunakan pernyataan break dan continue untuk mengubah aliran loop.
#Bash Standar For Loop
Perulangan for melakukan iterasi atas daftar item dan melakukan serangkaian perintah yang diberikan.
for item in [DAFTAR]do[PERINTAH]done
Daftar dapat berupa rangkaian string yang dipisahkan oleh spasi, rentang angka, keluaran perintah, array, dan sebagainya.
#Loop Over String
Pada contoh di bawah ini, loop akan mengulang setiap item dalam daftar string, dan elemen variabel akan disetel ke item saat ini:
for memakan in Rujak Tempe Tahu Rotidoecho "Makan $memakan"done
Loop akan menghasilkan Output sebagai berikut:
Makan Rujak
Makan Tempe
Makan Tahu
Makan Roti
#Loop over a number range
Kita dapat menggunakan ekspresi urutan untuk menentukan rentang angka atau karakter dengan menentukan titik awal dan akhir rentang. Ekspresi urutan mengambil bentuk berikut:
{AWAL..AKHIR}
Berikut ini contoh loop yang mengulang semua angka dari 0 hingga 3:
for i in {0..3}
do
echo "Angka: $i"
done
Maka Outpurnya ialah:
Angka: 0
Angka: 1
Angka: 2
Angka: 3
{AWAL..AKHIR..KENAIKAN}
Berikut adalah contoh yang menunjukkan cara menambah Kenaikan 5 :
for i in {0..20..5}
do
echo "Number: $i"
done
Maka Outputnya ialah:
Angka: 0
Angka: 5
Angka: 10
Angka: 15
Angka: 20
Kita juga dapat menggunakan for loop untuk melakukan iterasi pada Element Array. Dalam contoh di bawah ini, kita mendefinisikan sebuah array bernama BUKU dan melakukan iterasi pada setiap elemen dari array tersebut.
BUKU=('Matematika' 'Sejarah' 'Bahasa' 'Wirausaha')
for Buku in "${BUKU[@]}"; do
echo "Sebuah Buku: $Buku"
done
Maka Outputnya ialah:
Sebuah Buku: Matematika
Sebuah Buku: Sejarah
Sebuah Buku: Bahasa
Sebuah Buku: Wirausaha
#The C-style Bash for loop
Sintaks loop for C-style mengambil bentuk berikut:
for ((INISIALISASI; UJI; LANGKAH))
do
[PERINTAH]
done
Bagian INISIALISASI dijalankan hanya sekali ketika loop dimulai. Kemudian, bagian UJI dievaluasi. Jika salah, loop dihentikan. Jika UJI benar, perintah di dalam tubuh loop for dijalankan, dan bagian LANGKAH diperbarui.
Dalam kode contoh berikut, loop dibintangi dengan menginisialisasi i = 0, dan sebelum setiap iterasi memeriksa apakah i ≤ 10. Jika benar itu mencetak nilai saat ini dari i dan [menambah variabel] i sebesar 1 (i ++) jika tidak loop berakhir
for ((i = 0 ; i <= 1000 ; i++));
do
echo "Angka: $i"
done
Maka Outputnya Ialah:
Angka: 0
Angka: 1
Angka: 2
Angka: 3
Angka: 4
Angka: 5
...............
Angka: 999
Angka: 1000
#break and continue Statements
Pernyataan break mengakhiri loop saat ini dan meneruskan kontrol program ke pernyataan yang mengikuti pernyataan dihentikan. Biasanya digunakan untuk menghentikan loop ketika kondisi tertentu terpenuhi.
Break Statement
Dalam contoh berikut, kami menggunakan pernyataan if untuk menghentikan eksekusi loop setelah item iterasi saat ini sama dengan 'Lithium'.
for unsur in Hidrogen Helium Lithium Berilium;
do
if [[ "$unsur" == 'Lithium' ]]; then
break
fi
echo "Para Elemen: $unsur"
done
echo 'Semua Selesai!'
Maka Output ialah:
Para Elemen: Hidrogen
Para Elemen: Helium
Semua Selesai!
Continue Statement
Pernyataan continue keluar dari iterasi loop saat ini dan meneruskan kontrol program ke iterasi loop berikutnya.
Dalam contoh berikut, Kita melakukan iterasi melalui berbagai angka. Ketika item iterasi saat ini sama dengan '2', pernyataan continue akan menyebabkan eksekusi kembali ke awal loop dan melanjutkan dengan iterasi berikutnya:
for i in {1..5}; do
if [[ "$i" == '2' ]]; then
continue
fi
echo "Angka: $i"
done
Maka Outputnya ialah:
Angka: 1Angka: 3Angka: 4Angka: 5
Contoh berikut menunjukkan cara menggunakan Bash for loop untuk mengganti nama semua file yang diakhiri dengan .jpeg di direktori saat ini dengan mengganti ekstensi file dari .jpeg ke .jpg.
root@digazumxyz:/home/galang# ls
dua.jpeg satu.jpeg tiga.jpeg
Membuat Script Bash :
for file in /home/galang/*.jpeg; do
mv -- "$file" "${file%.jpeg}.jpg"
done
Mengecek Kembali
root@digazumxyz:/home/galang# bash loop.shroot@digazumxyz:/home/galang# lsdua.jpg loop.sh satu.jpg tiga.jpg
Mari kita menganalisis kode baris demi baris:
- Baris pertama membuat perulangan for dan melakukan iterasi melalui daftar didirektori /home/galang semua file yang diakhiri dengan '.jpeg'.
- Baris kedua berlaku untuk setiap item dari daftar dan memindahkan file ke yang baru mengganti '.jpeg' dengan '.jpg'. $ {file% .jpeg} untuk menghapus bagian '.jpeg' dari nama file menggunakan ekspansi parameter shell
- done menunjukkan akhir segmen loop.
Kesimpulan:
Bash for loop digunakan untuk mengeksekusi serangkaian perintah tertentu berulang kali selama beberapa kali
Referensi : https://linuxize.com/
Referensi : https://linuxize.com/
![Click here to Download](https://3.bp.blogspot.com/-lEuKeL83lBM/UDyf0fPjhqI/AAAAAAAAAPY/p4AmHHCMUnI/s200/download_button_animated.gif)