Unix / Linux - Loop S壳: Panduan untuk Pemula

Halo, para pemrogram yang sedang belajar! Hari ini, kita akan melompat ke dunia yang menarik dari loop shell di Unix dan Linux. Jangan khawatir jika Anda belum pernah menulis satu baris kode sebelumnya - saya akan memandu Anda langkah demi langkah, sama seperti yang saya lakukan untuk ribuan murid selama tahun-tahun mengajar saya. Mari kita mulai!

Unix / Linux - Shell Loops

Apa Itu Loop Shell?

Bayangkan Anda di sebuah pesta, dan Anda perlu menyapa setiap tamu. Daripada menulis pesan "Hello" secara terpisah untuk setiap orang, tidakkah Anda suka jika Anda bisa saja mengatakan, "Ulangi 'Hello' untuk setiap tamu"? Itu tepatnya apa yang dilakukan loop dalam pemrograman - mereka memungkinkan kita untuk mengulangi sebuah set intruksi beberapa kali.

Dalam skrip shell, loop sangat berguna untuk mengotomatisasi tugas yang berulang. Mereka dapat menyimpan waktu dan mengurangi kemungkinan kesalahan yang mungkin terjadi jika Anda mengulangi perintah secara manual.

Jenis Loop Shell

Dalam skrip shell Unix/Linux, kita secara utama bekerja dengan tiga jenis loop:

Jenis Loop Deskripsi Kasus Penggunaan
for loop Mengulang atas daftar item Ketika Anda tahu jumlah iterasi yang tepat
while loop Terus berlanjut selama condition benar Ketika Anda tidak tahu berapa banyak iterasi yang diperlukan
until loop Terus berlanjut sampai condition menjadi benar Menyerupai while, tetapi dengan logika terbalik

Ayo jelajahi masing-masing dari ini secara detil.

Loop 'for'

Loop 'for' seperti seorang petugas pos yang sungguh-sungguh yang memberikan pesan ke setiap rumah di jalan. Dia melalui daftar item dan melakukan aksi untuk setiap item.

Ini adalah sintaksis dasar:

for variable in list
do
commands
done

mari lihat contoh sederhana:

#!/bin/bash
for fruit in apple banana orange
do
echo "Saya suka $fruit"
done

Jika Anda menjalankan skrip ini, Anda akan melihat:

Saya suka apple
Saya suka banana
Saya suka orange

Dalam contoh ini, 'petugas pos' kita (loop) mengirim pesan "Saya suka" ke setiap 'rumah' (buah) di 'jalan' (daftar buah).

Loop 'while'

Loop 'while' seperti seorang penjual yang tak kenal lelah yang terus mengklop di pintu Anda selama Anda belum membeli produk mereka. Itu terus menjalankan set intruksi selama condition benar.

Ini adalah sintaksis dasar:

while [ condition ]
do
commands
done

mari lihat contoh:

#!/bin/bash
count=1
while [ $count -le 5 ]
do
echo "Count is: $count"
count=$((count + 1))
done

Skrip ini akan mengeluarkan:

Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5

Dalam kasus ini, 'penjual' kita (loop) terus 'mengklop' (mencetak angka) sampai angka mencapai 5.

Loop 'until'

Loop 'until' seperti menunggu bis. Anda terus menunggu sampai bis datang. Itu terus menjalankan perintah sampai condition menjadi benar.

Ini adalah sintaksis dasar:

until [ condition ]
do
commands
done

mari lihat contoh:

#!/bin/bash
count=1
until [ $count -gt 5 ]
do
echo "Count is: $count"
count=$((count + 1))
done

Skrip ini akan menghasilkan output yang sama seperti contoh loop 'while'. Perbedaannya adalah dalam logika: kita terus menerus sampai angka lebih besar dari 5, bukan saat angka kurang dari atau sama dengan 5.

Loop Bersarang

Seperti Anda bisa memiliki ruangan di dalam ruangan (bayangkan lemari yang dapat masuk), Anda juga bisa memiliki loop di dalam loop. Ini disebut loop bersarang.

Ini adalah contoh loop 'for' bersarang:

#!/bin/bash
for i in 1 2 3
do
echo "Loop luar: $i"
for j in a b c
do
echo "  Loop dalam: $j"
done
done

Skrip ini akan mengeluarkan:

Loop luar: 1
Loop dalam: a
Loop dalam: b
Loop dalam: c
Loop luar: 2
Loop dalam: a
Loop dalam: b
Loop dalam: c
Loop luar: 3
Loop dalam: a
Loop dalam: b
Loop dalam: c

Pertimbangkan ini seperti gedung multi-lantai. Loop luar mengulang setiap lantai, dan untuk setiap lantai, loop dalam mengulang setiap apartemen.

Loop 'while' Bersarang

Kita juga bisa memiliki loop 'while' bersarang. Ini adalah contoh:

#!/bin/bash
i=1
while [ $i -le 3 ]
do
echo "Loop luar: $i"
j=1
while [ $j -le 3 ]
do
echo "  Loop dalam: $j"
j=$((j + 1))
done
i=$((i + 1))
done

Skrip ini akan menghasilkan output yang mirip seperti contoh loop 'for' bersarang.

Kesimpulan

Selamat! Anda baru saja mengambil langkah pertama ke dunia loop shell. Ingat, loop seperti robot yang membantu yang dapat mengulangi tugas untuk Anda. Loop 'for' sangat bagus ketika Anda tahu secara tepat berapa kali Anda ingin mengulangi sesuatu. Loop 'while' dan 'until' sempurna ketika Anda tidak yakin dan perlu terus melanjutkan sampai condition terpenuhi.

Sekarang Anda terus menjalankan perjalanan pemrograman Anda, Anda akan menemukan loop menjadi alat yang tak tergantikan di dalam set alat coding Anda. Mereka akan membantu Anda mengotomatisasi tugas yang berulang, memproses jumlah besar data, dan menciptakan skrip yang lebih efisien dan elegan.

Tetap latihan, dan segera Anda akan bisa looping seperti seorang ahli! Ingat, setiap master programmer mulai tepat di tempat Anda sekarang. Selamat coding!

Credits: Image by storyset