While loop
Termasuk bagian Dasar-Dasar dalam perjalanan Terminal di Coddy. Pelajaran 72 dari 82.
for loop cocok digunakan saat kamu tahu persis item yang akan diiterasi. Namun, bagaimana jika kamu ingin terus melakukan perulangan sampai kondisi tertentu berubah? Di sinilah while loop digunakan.
Perulangan while terus berjalan selama kondisinya tetap true. Berikut struktur dasarnya:
#!/bin/bash
count=1
while [ $count -le 5 ]; do
echo "Count: $count"
count=$((count + 1))
doneSkrip ini mencetak angka 1 sampai 5.
Perulangan memeriksa apakah count kurang dari atau sama dengan 5. Jika benar, perulangan menjalankan isi, menaikkan penghitung menggunakan $((...)) untuk operasi aritmetika, lalu memeriksa lagi.
Begitu count mencapai 6, kondisi menjadi false dan perulangan berhenti.
Perulangan while cocok digunakan saat kamu belum tahu sebelumnya berapa banyak iterasi yang diperlukan. Contohnya, kamu bisa terus meminta input sampai pengguna mengetik "quit":
#!/bin/bash
input=""
while [ "$input" != "quit" ]; do
read -p "Enter command (quit to exit): " input
echo "You entered: $input"
doneBerhati-hatilah dengan while loop. Jika kondisi tidak pernah menjadi false, perulanganmu berjalan selamanya.
Pastikan selalu ada sesuatu di dalam perulangan yang pada akhirnya mengubah kondisi, seperti menambah nilai pencacah atau memperbarui variabel berdasarkan input pengguna.
Tantangan
MudahBuat skrip shell bernama counter.sh yang menggunakan while loop untuk mencetak angka dari 1 hingga 4.
Skripmu harus:
- Dimulai dengan baris shebang (
#!/bin/bash) - Membuat variabel bernama
numdengan nilai awal1 - Menggunakan while loop yang berlanjut selama
numkurang dari atau sama dengan 4 - Di dalam loop, mencetak angka saat ini dengan format:
Number: [num] - Menambah nilai
numsebesar 1 setelah setiap iterasi menggunakan$((num + 1))
Buat skrip dapat dieksekusi lalu jalankan. Outputmu harus:
Number: 1
Number: 2
Number: 3
Number: 4Petunjuk: Gunakan
-leuntuk perbandingan "kurang dari atau sama dengan". Ingat untuk menambah nilai counter di dalam loop dengannum=$((num + 1))agar tidak terjadi perulangan tanpa akhir. Akhiri while loop dengandone.
Coba sendiri
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Direktori
Buat DirektoriSalin DirektoriPindahkan dan Ganti Nama DirektoriHapus DirektoriRingkasan: Operasi Direktori7Isi File
Head dan TailJumlah KataPerintah SortPerintah UniqueDasar-Dasar GrepGrep dengan FlagUlasan: Detektif Teks10Proyek Penganalisis Log
Gambaran Umum ProyekMelihat File Log13Dasar-Dasar Shell Scripting
Apa Itu Shell ScriptBuat dan Jalankan ScriptVariabel dalam ScriptInput Pengguna dalam ScriptPernyataan ifFor loopWhile loopRingkasan: Tebak Angka2Navigasi
Tampilkan Direktori KerjaLihat Daftar FileGanti DirektoriJalur Absolut vs RelatifDirektori Home dan RootRingkasan: Temukan Arahmu8Pengalihan
Output StandarMenimpa FileMenambahkan ke FileInput StandarError StandarRangkuman: Pembuat Log6Wildcard dan Pola
Wildcard Tanda BintangWildcard Tanda TanyaWildcard Tanda Kurung SikuMenggabungkan WildcardRangkuman: Operasi Selektif9Penggunaan Pipe
Apa Itu PipeMenghubungkan Dua PerintahMenghubungkan Beberapa PerintahPipe dengan grepRingkasan: Pipeline DataLatihan sendiri: Playground Terminal