Cara menggunakan pernyataan istirahat dan melanjutkan dalam skrip shell
- 1643
- 407
- John Ratke
Dalam artikel ini, kita akan melihat cara menggunakan a merusak Dan melanjutkan dalam skrip bash. Di Bash, kami memiliki tiga konstruksi loop utama (untuk, ketika, sampai). Merusak Dan melanjutkan Pernyataan Bash Builtin dan digunakan untuk mengubah aliran loop Anda. Konsep Istirahat dan Lanjutan ini tersedia dalam bahasa pemrograman populer seperti Python.
$ type -a istirahat terusPerintah Bash Builtin
Keluar dari loop dengan pernyataan istirahat
Itu merusak Pernyataan akan keluar dari loop dan kontrol diteruskan ke pernyataan berikutnya dalam loop. Anda dapat menjalankan membantu perintah untuk mendapatkan beberapa informasi tentang merusak penyataan.
$ Help BreakBreak Help Command
Sintaks dasar istirahat.
$ break [n] n adalah opsional
Lihatlah contoh di bawah ini. Ini adalah loop yang sederhana untuk berulang kali pada kisaran nilai dari 1 hingga 20 dalam langkah tambahan 2. Pernyataan bersyarat akan mengevaluasi ekspresi dan saat itu true ($ val = 9) maka itu akan menjalankan pernyataan break dan loop akan dihentikan melewatkan iterasi yang tersisa.
#!/usr/bin/bash for val di 1… 20… 2 do if [[$ val -eq 9]] Kemudian break else echo "mencetak $ val" fi selesaiPernyataan istirahat
Lewati iterasi dengan pernyataan lanjutan
Bagaimana jika Anda tidak ingin sepenuhnya keluar dari loop tetapi lewati blok kode saat kondisi tertentu terpenuhi? Ini bisa dilakukan dengan a melanjutkan penyataan. Itu melanjutkan Pernyataan akan melewatkan eksekusi blok kode ketika kondisi tertentu dipenuhi dan kontrol diteruskan kembali ke pernyataan loop untuk iterasi berikutnya.
Untuk mengakses bantuan.
$ Bantuan berlanjutLanjutkan bantuan
Lihatlah contoh di bawah ini. Ini adalah contoh yang sama yang kami gunakan untuk menunjukkan pernyataan break. Sekarang kapan Val dievaluasi ke sembilan kemudian melanjutkan Pernyataan akan melewatkan semua blok kode yang tersisa dan meneruskan kendali untuk loop untuk iterasi berikutnya.
#!/usr/bin/bash untuk val di 1… 20… 2 lakukan jika [[$ val -eq 9]] kemudian lanjutkan fi echo "mencetak $ val" selesaiLanjutkan pernyataan
Jika Anda tahu Python Kemudian merusak Dan melanjutkan perilaku juga sama di Python. Tapi Python memberikan satu pernyataan kontrol loop lagi yang disebut a lulus.
Lulus seperti a batal pernyataan dan penerjemah akan membacanya tetapi tidak akan melakukan operasi apa pun. Itu hanya menghasilkan tidak ada operasi. Bash tidak memberikan pernyataan serupa tetapi kita dapat meniru perilaku ini menggunakan kata kunci yang benar atau usus besar(:). Baik True dan Colon adalah shell builtin dan tidak melakukan operasi apa pun.
$ type -a: trueBuiltin Shell Benar dan Colon
Lihatlah contoh di bawah ini. Ketika sebuah bersyarat Pernyataan dievaluasi menjadi true ($ val = 9) lalu BENAR Pernyataan tidak akan melakukan apa pun dan loop akan berlanjut.
#!/usr/bin/bash untuk val di 1… 20… 2 lakukan jika [[$ val -eq 9]] Kemudian true fi echo "mencetak $ val" selesaiPernyataan lulus
Itu untuk artikel ini. Kami ingin mendengar umpan balik berharga Anda dan semua tips yang Anda miliki.
- « LFCA belajar mengelola waktu dan tanggal di Linux - Bagian 6
- Cara menggunakan sampai loop di skrip shell Anda »