Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

9 Contoh For Loops di Skrip Bash Linux

Posted on November 1, 2023

Bash for loop adalah alat serba guna yang dapat bekerja dengan angka, kata, array, variabel baris perintah, atau keluaran perintah lainnya. Perulangan for sederhana dapat digunakan dengan daftar numerik atau daftar kata, memungkinkan Anda mengulangi bagian kode untuk setiap nilai dalam daftar. Perulangan for juga dapat digunakan dengan rentang angka, nama file, parameter baris perintah, susunan kata, dan susunan asosiatif, memberikan fleksibilitas dalam tugas pembuatan skrip.

Perulangan Bash for yang serbaguna melakukan lebih dari sekadar perulangan beberapa kali. Kami menjelaskan banyak variannya sehingga Anda dapat menggunakannya dengan sukses di skrip Linux Anda sendiri.

The for Loop

Semua skrip dan bahasa pemrograman memiliki beberapa cara untuk menangani loop. Perulangan adalah bagian kode yang ingin Anda jalankan berulang kali. Daripada mengetikkan serangkaian instruksi yang sama ke dalam skrip Anda, berulang kali, sebuah loop akan mengulangi satu bagian kode berulang kali untuk Anda.

Perulangan Bash for sangat fleksibel. Ini dapat bekerja dengan angka, kata, array, variabel baris perintah, atau output dari perintah lainnya. Ini digunakan di header loop. Header menentukan apa yang sedang dikerjakan oleh loop—angka atau string, misalnya—dan kondisi akhir yang akan menghentikan perulangan.

Badan loop berisi kode yang ingin Anda ulangi. Ini menampung apa yang Anda ingin loop lakukan. Badan perulangan dapat berisi perintah skrip apa pun yang valid.

Variabel yang disebut penghitung perulangan atau iterator digunakan untuk menelusuri rentang nilai atau daftar item data. Untuk setiap loop, iterator mengambil nilai dari angka berikutnya, string, atau tipe data apa pun yang diulangi oleh loop tersebut. Hal ini memungkinkan loop untuk bekerja dengan nilai masing-masing item data secara bergantian, atau bahkan dalam beberapa kasus memanipulasi item data itu sendiri.

Simple for Loops

Jika Anda ingin menulis loop for pertama Anda, contoh sederhana berikut akan diperoleh Anda memulai.

for Loops menggunakan Daftar Numerik

Anda dapat menjalankan loop for pada baris perintah. Perintah ini membuat dan mengeksekusi perulangan for sederhana. Iterator adalah variabel yang disebut i. Kita akan menetapkan i sebagai masing-masing nilai dalam daftar angka, secara bergantian. Badan perulangan akan mencetak nilai itu ke jendela terminal. Kondisi yang mengakhiri perulangan ini adalah ketika i telah melakukan iterasi pada seluruh daftar angka.

untuk i dalam 1 2 3 4 5; lakukan gema $i; selesai

Penting untuk dicatat di sini bahwa variabel i bertambah satu setiap kali putaran berputar, tetapi itu karena daftar angka bertambah satu setiap kali.

Daftar angka ini dimulai dari 3 dan naik dalam langkah dua , lalu sembarang melompat ke 44.

untuk i dalam 3 5 7 9 11 44; lakukan gema $i; selesai

Tidak ada bedanya dengan loop for. Ini dimulai dari salah satu ujung daftar dan menggunakan setiap nilai secara bergantian, hingga semua nilai dalam daftar telah digunakan. Nbsp

Nomornya juga tidak perlu dalam urutan menaik. Mereka bisa dalam urutan apa pun.

untuk saya dalam 3 43 44 11 9; lakukan gema $i; selesai

untuk Loop Menggunakan Daftar Kata

Kita dapat dengan mudah melakukan hal yang sama dengan kata-kata. Salin teks skrip ke dalam editor dan simpan sebagai “word-list.sh.”

#!/bin/bashfor word di Ini adalah rangkaian kata-katado echo $worddone

Anda harus menggunakan chmod agar skrip dapat dieksekusi , dan skrip lain yang Anda salin dari artikel ini. Ganti saja nama skrip setiap kali Anda menggunakan perintah chmod.

chmod +x word-list.sh

Mari kita jalankan skripnya.

./word-list.sh

Sama seperti yang terjadi pada angka, iterator—dalam contoh ini , variabel word—berfungsi menelusuri daftar item data hingga mencapai akhir daftar. Badan perulangan mengakses nilai dalam variabel kata sehingga setiap kata dalam daftar diproses.

untuk Perulangan dengan Rentang Angka

Jika Anda ingin perulangan for dijalankan 100 kali, akan sangat melelahkan jika harus mengetikkan urutan 100 angka di header loop. Rentang angka memungkinkan Anda menentukan angka pertama dan terakhir saja.

Skrip ini adalah “number-range.sh.”

#!/bin/bashfor i in {1..10}do echo”Loop spin:” $idone

Rentang angkanya adalah didefinisikan dalam tanda kurung kurawal “{}” dengan dua titik “..” yang memisahkan angka yang mengawali dan mengakhiri rentang. Pastikan Anda tidak menyertakan spasi apa pun dalam definisi rentang.

Beginilah cara kerjanya:

./number-range.sh

Anda dapat menyertakan nomor lain yang menentukan ukuran langkah yang harus digunakan iterator untuk menelusuri angka-angka dalam rentang tersebut. Skrip ini, “number-range2.sh” akan menggunakan rentang 0 hingga 32, dan ukuran langkah 4.

#!/bin/bashfor i di {0..32..4}do echo”Loop spin: ” $idone

Iterator menelusuri rentang angka dalam lompatan empat.

./number-range2.sh

for Loop Menggunakan Nama File

Karena kita dapat memproses daftar kata, kita dapat membuat skrip kita berfungsi dengan nama file. Skrip ini disebut “filenames.sh.”

#!/bin/bashforfileinword-list.shnumber-range.shnumber-range2.shfilenames.shdo ls -lh “$file”done

Tidak ada gunanya memiliki skrip yang hanya berfungsi apa yang ls dapat lakukan, tetapi ia mendemonstrasikan cara mengakses nama file di dalam badan loop.

./namafile.sh

Dengan cara yang mirip dengan menggunakan rentang angka, kita dapat menggunakan pola file di header loop untuk menentukan file yang ingin kita proses. Hal ini menghindari banyak pengetikan dan berarti kita tidak perlu mengetahui terlebih dahulu nama filenya.

Skrip ini disebut “nama file2.sh.” Kami telah mengganti daftar nama file dengan pola nama file “*.sh” agar skrip melaporkan semua file skrip di direktori saat ini.

#!/bin/bashforfilein *.shdo ls -lh “$file”done

Berikut ini output.

./filenames2.sh

for Loop Menggunakan Parameter Baris Perintah

Kita dapat menambahkan lebih banyak fleksibilitas dengan meneruskan pola nama file pada baris perintah. Variabel $* mewakili semua parameter baris perintah yang diteruskan ke skrip.

Ini adalah “namafile3.sh.”

#!/bin/bashfor file di $*do ls -lh “$file”done

Kami akan meminta nama file yang dimulai dengan “n” dan memiliki ekstensi SH.

./filenames3.sh n*.sh

Kami juga dapat meneruskan lebih dari satu pola sekaligus.

./filenames3.sh n*.sh .bashrc

File variabel iterator mengambil alih nilai masing-masing parameter baris perintah. Pola nama file diperluas, dan semua nama file diproses di badan perulangan. For Loops seperti C

Bash mendukung perulangan for tiga istilah klasik, seperti yang ditemukan dalam bahasa pemrograman C. Mereka disebut perulangan for tiga istilah karena ada tiga istilah di header perulangan.

Nilai awal dari iterator perulangan. Tes apakah perulangan berlanjut atau berakhir. Kenaikan—atau penurunan—dari iterator.

Skrip ini adalah “c-like.sh.”

Iterator I disetel ke 1 pada awal perulangan, dan perulangan akan berjalan selama pernyataan ” i<=10 ” benar. Segera setelah i mencapai 11, perulangan for akan berhenti. Iterator bertambah satu, setiap putaran loop.

#!/bin/bashfor (( i=1; i<=10; i++ ))do echo”Loop number:” $idone

Ayo jalankan skrip ini.

. /c-like.sh

Perulangan for seperti C memungkinkan pembuatan loop for dengan mudah yang memiliki persyaratan sedikit aneh. Perulangan ini dimulai pada 15, dan dihitung mundur dalam langkah 3. Ini adalah “c-like2.sh”

#!/bin/bashfor (( i=15; i>0; i-=3 ))do echo”Loop number:” $idone

Saat kita menjalankannya, ia akan melompat mundur dalam langkah tiga.

./c-like2.sh

Infinite for Loops

Anda juga dapat menggunakan format loop for ini untuk membuat loop tak terbatas. Yang perlu Anda lakukan hanyalah menghapus semua elemen dari header loop, seperti ini. Ini adalah “infinite.sh.”

#!/bin/bashfor (( ; ; ))do echo”Tekan Ctrl+C untuk menghentikan…” sleep 1done

Anda harus menekan Ctrl+C untuk menghentikan loop.

./infinite.sh

for Loop Menggunakan Array Kata

Kita dapat dengan mudah melakukan iterasi melalui array kata. Kita perlu memberikan nama array di header loop, dan iterator akan menelusuri semua entri dalam array. Ini adalah “word-array.sh.”

#!/bin/bashdistributions=(“Ubuntu Fedora Manjaro Arch EndeavourOS Garuda”) untuk distro di $distributionsdo echo $distrodone

Semua distribusi terdaftar untuk kami.

./word-array. sh

Perintah lanjutkan

Jika Anda ingin loop melewati entri tertentu, uji apakah iterator cocok dengan entri itu dan gunakan perintah lanjutkan. Perintah continue mengabaikan perputaran loop saat ini. Ini menambah iterator dan memulai putaran loop berikutnya—dengan asumsi entri yang ingin Anda lewati bukanlah item terakhir dalam daftar.

Ini adalah “word-array2.sh.” Ini melangkahi entri larik “Arch” tetapi memproses semua anggota larik lainnya.

#!/bin/bashdistributions=(“Ubuntu Fedora Manjaro Arch EndeavourOS Garuda”) untuk distro di $distributionsdo  if[[ “$distro” == “Arch ” ]] ; lalu    lanjutkan fi echo $distrodone

“Arch” tidak muncul di jendela terminal.

./word-array2.sh

Perintah break

Perintah break keluar dari loop dan mencegah pemrosesan lebih lanjut.

Ini adalah “word-array3.sh. ” Sama seperti skrip sebelumnya dengan continue diganti dengan break.

#!/bin/bashdistributions=(“Ubuntu Fedora Manjaro Arch EndeavourOS Garuda”) untuk distro di $distributionsdo if[[ “$distro” == “Arch” ]] ; kemudian    break fi echo $distrodone

Ketika iterator berisi “Arch”, loop for mengabaikan pemrosesan lagi.

./word-array3.sh

for Loop Menggunakan Array Asosiatif

Dalam Bash 4 dan yang lebih tinggi, array asosiatif memungkinkan Anda membuat daftar pasangan nilai kunci yang dapat dicari berdasarkan kunci atau nilainya. Karena hubungan dua arah antara kunci dan nilai, mereka juga disebut kamus data.

Kita dapat melakukan iterasi melalui array asosiatif menggunakan for loop. Skrip ini adalah “associative.sh.” Ini mendefinisikan array asosiatif dengan empat entri di dalamnya, satu untuk masing-masing “dog”, “cat”, “robin” , dan “human.” Ini adalah kuncinya. Nilainya adalah (default) jumlah kaki yang dimiliki masing-masing.

#!/bin/bashdeclare -A animal=( [anjing]=Berkaki empat [kucing]=Berkaki empat [robin]=Berkaki dua [manusia] =Berkaki dua )untuk kaki di${!animals[@]}lakukan  jika [ ${animals[$legs]} == “Berkaki dua” ]; lalu     echo${legs}  fidone

Iteratornya disebut Legs . Perhatikan bahwa header loop berisi tanda “!” tanda seru. Ini tidak bertindak sebagai operator logika NOT, ini adalah bagian dari sintaksis array asosiatif. Diperlukan untuk mencari melalui array.

Badan loop melakukan tes perbandingan string. Jika nilai anggota array adalah “Berkaki Dua”, ia akan mencetak nilai kunci ke jendela terminal. Saat kita menjalankannya, skrip mencetak makhluk berkaki dua.

./associative.sh

Iterate Atas keluaran Perintah

Jika Anda memiliki perintah atau urutan perintah yang menghasilkan daftar sesuatu, seperti nama file, Anda dapat mengulanginya dengan perulangan for. Anda harus berhati-hati terhadap perluasan nama file yang tidak terduga, tetapi dalam kasus sederhana tidak masalah.

Skrip ini adalah “command.sh.” ia menggunakan ls dan wc untuk menyediakan daftar nama file skrip yang diurutkan, bersama dengan jumlah baris, kata, dan byte.

#!/bin/bashfor i in $(ls *.sh | sort);do echo $(wc $i)done

Saat kami menjalankannya, kami mendapatkan statistik untuk setiap file, dengan file terdaftar dalam urutan abjad.

./command.sh

The Dazzling for Loop

For loop adalah alat skrip yang serbaguna dan mudah dipahami. Namun sefleksibel apa pun itu, jangan lupa bahwa loop lain ada karena suatu alasan. Jangan terpesona dengan pemikiran bahwa hanya perulangan for yang Anda perlukan.

Terkait: Cara Memproses File Baris demi Baris dalam Skrip Bash Linux

Perulangan while, misalnya, jauh lebih cocok untuk hal-hal tertentu daripada perulangan for , seperti membaca baris dari suatu file.

Menulis skrip yang baik berarti menggunakan alat yang paling sesuai untuk tugas yang ada. Perulangan for adalah alat yang hebat untuk dimiliki di kotak peralatan trik Anda.

Terbaru

  • Inilah Cara Mendapatkan Rotten Seed di Fisch Roblox, Lokasi Rahasia di Toxic Grove Buat Unlock Toxic Lotus!
  • Inilah Cara Zakat Crypto Kalian Bisa Jadi Pengurang Pajak Berdasarkan Aturan Resmi Pemerintah!
  • Inilah Perbandingan Airwallex vs Payoneer 2026: Jangan Sampai Profit Kalian Ludes Gara-Gara Biaya Admin!
  • Inilah Roadmap 7 Tahap Bangun Bisnis Digital dari Nol Biar Nggak Cuma Putar-Putar di Tempat!
  • Inilah Cara Tetap Gajian dari YouTube Meski View Masih Ratusan, Penasaran?
  • Inilah Alasan Akun TikTok Affiliate GMV 270 Juta Kena Banned Permanen!
  • Inilah Bahaya Astute Beta Server APK, Jangan Sembarang Klik Link Download FF Kipas 2026!
  • Inilah Bahaya Nonton Film di LK21 dan IndoXXI, Awas Data Pribadi dan Saldo Rekening Kalian Bisa Ludes!
  • Inilah Kronologi & Video Lengkap Kasus Sejoli Tambelangan Sampang Viral, Ternyata Gini Awal Mulanya!
  • Inilah Alasan Kenapa Koin Nego Neko Shopee Nggak Bisa Dipakai Bayar Full dan Cara Rahasia Dapetinnya!
  • Inilah Cara Menjawab Pertanyaan Apakah di Sekolahmu Sudah Ada IFP/PID dengan Benar dan Profesional
  • Inilah Fakta Isu Roblox Diblokir di Indonesia 2026, Benarkah Akan Ditutup Total?
  • Inilah Penyebab dan Cara Mengatasi FF Kipas My ID Verify UID Biar Akun Tetap Aman
  • Inilah Deretan HP RAM 8GB Harga di Bawah 2 Juta Terbaik 2026, Spek Dewa Tapi Nggak Bikin Kantong Jebol!
  • Contoh Cara Buat SK Panitia TKA 2026
  • Inilah Cara Download Point Blank ID Versi Terbaru 2026, Gampang Banget Ternyata!
  • Inilah Persiapan Lengkap Gladi Bersih TKA 2026 SD dan SMP: Jadwal, Teknis Proktor, dan Aturan yang Wajib Kalian Tahu
  • Inilah Aturan Lengkapnya, Apakah Zakat dalam Bentuk Barang Bisa Mengurangi Pajak Penghasilan Kalian?
  • Inilah Kenapa KBLI Sangat Penting Buat Bisnis Digital dan Gini Caranya Biar Kalian Nggak Salah Pilih Kode
  • Inilah Fitur Keren ONLYOFFICE Docs 9.3, Cara Baru Edit PDF dan Dokumen Lebih Efisien!
  • Inilah Cara Banjir Komisi Shopee Affiliate Hanya Dalam 7 Hari Saja
  • Cara Download Aplikasi BUSSID Versi 3.7.1 Masih Dicari dan Link Download Aman Mediafire
  • Inilah Cara Lengkap Mengajukan SKMT dan SKBK di EMIS GTK 2026, Biar Tunjangan Cair Tanpa Drama!
  • Inilah Kenapa Bukti Setor Zakat Kalian Harus Ada NPWP-nya, Jangan Sampai Klaim Pajak Ditolak!
  • Inilah Cara Jadi Clipper Video Sukses Tanpa Perlu Tampil di Depan Kamera
  • Inilah Cara Upload NPWP dan Rekening di EMIS GTK Madrasah Terbaru, Jangan Sampai Tunjangan Terhambat!
  • Inilah Fakta di Balik Video Ukhti Sholat Mukena Pink Viral yang Bikin Geger Media Sosial
  • Belum Tahu? Inilah Langkah Pengisian Survei Digitalisasi Pembelajaran 2026 Biar Nggak Salah
  • Ini Kronologi Video Viral Ibu Tiri vs Anak Tiri Ladang Sawit Tiktok
  • Inilah Caranya Update Chromebook Sekolah Agar Siap Digunakan untuk TKA SD dan SMP
  • How to Master Cloud Infrastructure with Ansible and Terraform
  • How to Fix VirtualBox Stuck on Saving State: A Complete Guide
  • How to Run Windows Apps on Linux: A Complete Guide to WinBoat, WINE, and Beyond
  • Build Your Own AI Development Team: Deploying OpenClaw and Claude Code on a VPS!
  • How to Measure Real Success in the Age of AI: A Guide to Software Metrics That Actually Matter
  • How to LLM Finetuning with FPT AI Factory
  • New ComfyUI Released, The App Mode is Amazing
  • How to Master Kilo Code for VS Code: Use Parallel AI Agents to Build Software Faster than Ever Before
  • 4 Massive Claude Code 2.0 Updates You Must Master
  • How to Build Your Own Website from Scratch: A Beginner’s Guide to Mastering HTML and CSS
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025

©2026 emka.web.id | Design: Newspaperly WordPress Theme