Cara menggunakan bash for loop di linux
- 2407
- 721
- Dwayne Hackett
Dalam bahasa pemrograman, Loop adalah komponen penting dan digunakan saat Anda ingin mengulangi kode berulang kali sampai kondisi yang ditentukan terpenuhi.
Di dalam Pesta Scripting, loop Mainkan banyak peran yang sama dan digunakan untuk mengotomatisasi tugas berulang seperti dalam bahasa pemrograman.
Di dalam Pesta Scripting, ada 3 jenis loop: untuk loop, Saat loop, Dan sampai loop. Ketiganya digunakan untuk mengulangi daftar nilai dan melakukan serangkaian perintah yang diberikan.
Dalam panduan ini, kami akan fokus pada Bash untuk loop di linux.
Bash untuk sintaks loop
Seperti yang disebutkan sebelumnya, untuk loop mengulangi rentang nilai dan menjalankan satu set perintah.
Untuk loop mengambil sintaks berikut:
untuk variable_name di value1 value2 value3 ... n do command1 command2 commandn selesai
Mari kita periksa beberapa contoh penggunaan bash for loop.
Bash sederhana untuk loop
Dalam bentuknya yang paling sederhana, Untuk loop mengambil format dasar berikut. Dalam contoh ini, variabel N
mengulangi sekelompok nilai numerik yang terlampir dalam kawat gigi keriting dan mencetak nilainya ke stdout.
untuk n di 1 2 3 4 5 6 7; lakukan gema $ nBash untuk contoh loop
Bash for loop dengan rentang
Dalam contoh sebelumnya, kami secara eksplisit mencantumkan nilai -nilai yang akan diulangi oleh untuk loop, yang berfungsi dengan baik. Namun, Anda hanya bisa membayangkan betapa rumit dan memakan waktu tugas itu jika Anda mengulangi, misalnya, seratus nilai. Ini akan memaksa Anda untuk mengetik semua nilai dari 1 hingga 100.
Untuk mengatasi masalah ini, tentukan rentang. Untuk melakukannya, tentukan nomor untuk memulai dan berhenti dipisahkan oleh dua periode.
Dalam contoh ini, 1 adalah nilai pertama sementara 7 adalah nilai terakhir dalam kisaran.
#!/bin/bash untuk n di 1 ... 7; lakukan gema $ n
Setelah skrip shell dieksekusi, semua nilai dalam kisaran terdaftar, mirip dengan apa yang kami miliki Loop sederhana.
Bash for loop dengan rentang contohSelain itu, kami dapat memasukkan nilai di akhir kisaran yang akan menyebabkan untuk loop untuk mengulangi nilai -nilai dalam langkah tambahan.
Script bash berikut mencetak nilai antara 1 dan 7 dengan 2 langkah tambahan antara nilai mulai dari nilai pertama.
#!/bin/bash untuk n di 1 ... 7 ... 2; lakukan gema $ nBash untuk nilai bertambahnya loop
Dari contoh di atas, Anda dapat melihat bahwa lingkaran bertambah nilai di dalam kawat gigi keriting dengan 2 nilai.
Bash untuk loop dengan array
Anda juga dapat dengan mudah mengulangi nilai -nilai yang ditentukan dalam array menggunakan a Untuk loop. Dalam contoh berikut, untuk loop mengulangi semua nilai di dalam array buah dan mencetaknya ke stdout.
#!/bin/bash fruits = ("blueberry" "peach" "mangga" "nanas" "papaya") untuk n dalam $ fruits [@]; lakukan gema $ nBash untuk contoh array loop
Itu @
operator mengakses atau menargetkan semua elemen. Ini memungkinkan untuk mengulangi semua elemen satu per satu.
Selain itu, Anda dapat mengakses satu elemen dengan menentukan posisinya di dalam array.
Misalnya untuk mengakses “buah manggaElemen, ganti @
operator dengan posisi elemen dalam array (elemen pertama dimulai pada 0, jadi dalam hal ini, “buah mangga“Akan dilambangkan dengan 2).
Seperti inilah loop untuk.
#!/bin/bash fruits = ("blueberry" "peach" "mangga" "nanas" "papaya") untuk n dalam $ buah [2]; lakukan gema $ nBash untuk loop dengan elemen array
Bash-styled untuk loop
Anda dapat menggunakan variabel di dalam loop untuk mengulangi berbagai elemen. Di sinilah C-styled untuk loop Silahkan masuk. Contoh berikut menggambarkan a C-style untuk loop Itu mencetak daftar nilai numerik dari 1 hingga 7.
#!/bin/bash n = 7 untuk ((n = 1; n<=$n ; n++ )); do echo $n doneBash C-styled untuk contoh loop
Bash-c-styled untuk loop dengan pernyataan bersyarat
Anda dapat memasukkan pernyataan bersyarat di dalamnya C-styled untuk loop. Dalam contoh berikut, kami telah menyertakan pernyataan IF-Else yang memeriksa dan mencetak angka genap dan ganjil antara 1 dan 7.
#!/bin/bash untuk ((n = 1; n<=7; n++ )) do # Check if the number is even or not if (( $n%2==0 )) then echo "$n is even" else echo "$n is odd" fi doneBash C-Styled untuk Contoh Pernyataan Bersyarat
Gunakan pernyataan 'Lanjutkan' dengan Bash untuk Loop
The 'melanjutkan'Pernyataan adalah perintah bawaan yang mengontrol bagaimana skrip berjalan. Selain Bash Scripting, ini juga digunakan dalam bahasa pemrograman seperti Python dan Java.
Itu Lanjutkan pernyataan menghentikan iterasi saat ini di dalam a lingkaran Saat kondisi tertentu dipenuhi, dan kemudian melanjutkan iterasi.
Pertimbangkan untuk loop ditunjukkan di bawah ini.
#!/bin/bash untuk n di 1 ... 10 lakukan jika [[$ n -eq '6']] kemudian gema "target $ n telah tercapai" Lanjutkan fi echo $ n selesaiBash for Loop Lanjutkan Contoh Pernyataan
Inilah yang dilakukan kode:
- Baris 2: Menandai awal loop untuk dan mengulangi variabel n dari 1 hingga 10.
- Baris 4: Memeriksa nilai n dan jika variabelnya sama dengan 6, skrip menggemakan pesan ke stdout dan me -restart loop pada iterasi berikutnya di baris 2.
- Baris 9: Mencetak nilai ke layar hanya jika kondisi di baris 4 adalah false.
Berikut ini adalah output yang diharapkan setelah menjalankan skrip.
Bash for loop lanjutkan output pernyataanGunakan pernyataan 'break' dengan bash untuk loop
Itu 'merusak' pernyataan, seperti namanya, menghentikan atau mengakhiri iterasi saat suatu kondisi terpenuhi.
Pertimbangkan Untuk loop di bawah.
#!/bin/bash untuk n di 1 ... 10 lakukan jika [[$ n -eq '6']] kemudian echo "target $ n telah tercapai" break fi echo $ n selesai gema "semuanya selesai"Bash untuk Pernyataan Loop Break
Inilah yang dilakukan kode:
- Baris 2: Menandai awal loop untuk dan mengulangi variabel n dari 1 hingga 10.
- Baris 4: Memeriksa nilai n dan jika variabelnya sama dengan 6, skrip menggemakan pesan ke stdout dan menghentikan iterasi.
- Baris 9: Mencetak angka ke layar hanya jika kondisi di baris 4 adalah false.
Dari output, Anda dapat melihat bahwa loop berhenti setelah variabel memenuhi kondisi loop.
Bash untuk output pernyataan loop breakKesimpulan
Itu adalah tutorial tentang Bash untuk loop. Kami harap Anda menemukan ini berwawasan luas. Jangan ragu untuk mempertimbangkan umpan balik Anda.
- « Cara memasang pemantauan nagios di rhel, rocky, dan almalinux
- Alat terbaik untuk membuat formulir PDF yang bisa diisi di Linux »