10 Petua Berguna untuk Menulis Skrip Bash Berkesan di Linux
- 2632
- 367
- Clarence Powlowski
Skrip shell adalah bentuk pengaturcaraan yang paling mudah yang boleh anda pelajari/lakukan di Linux. Lebih -lebih lagi, ia adalah kemahiran yang diperlukan untuk pentadbiran sistem untuk mengautomasikan tugas, membangunkan utiliti/alat mudah baru yang hanya disebut tetapi beberapa.
Dalam artikel ini, kami akan berkongsi 10 petua berguna dan praktikal untuk menulis skrip bash yang berkesan dan boleh dipercayai dan mereka termasuk:
1. Sentiasa gunakan komen dalam skrip
Ini adalah amalan yang disyorkan yang bukan sahaja digunakan untuk skrip shell tetapi semua jenis pengaturcaraan lain. Menulis komen dalam skrip membantu anda atau yang lain melalui skrip anda memahami apa bahagian skrip yang berlainan.
Sebagai permulaan, komen ditakrifkan menggunakan #
tanda.
#Tecmint adalah tapak terbaik untuk semua jenis artikel Linux
2. Membuat skrip keluar apabila gagal
Kadang -kadang bash boleh terus melaksanakan skrip walaupun perintah tertentu gagal, sehingga mempengaruhi sisa skrip (akhirnya dapat mengakibatkan kesilapan logik). Gunakan garis di bawah untuk keluar dari skrip apabila arahan gagal:
#Let skrip keluar jika arahan gagal set -o errexit atau set -e
3. Buat skrip keluar ketika Bash menggunakan pemboleh ubah yang tidak diisytiharkan
Bash juga boleh cuba menggunakan skrip yang tidak diisytiharkan yang boleh menyebabkan ralat logik. Oleh itu, gunakan baris berikut untuk mengarahkan Bash untuk keluar dari skrip apabila ia cuba menggunakan pemboleh ubah yang tidak diisytiharkan:
#Let skrip keluar jika pemboleh ubah unsed digunakan set -o nounset atau set -u
4. Gunakan petikan berganda untuk pembolehubah rujukan
Menggunakan petikan berganda semasa merujuk (menggunakan nilai pembolehubah) membantu mengelakkan pemisahan perkataan (mengenai ruang putih) dan globbing yang tidak perlu (mengiktiraf dan mengembangkan kad liar).
Lihat contoh di bawah:
#!/bin/bash #let skrip keluar jika perintah gagal set -o errexit #let skrip keluar jika pemboleh ubah unsed digunakan set -o nounset echo "nama tanpa petikan" echo names = "tecmint fossmint linusay" ; DO ECHO "$ NAME" DONE ECHO ECHO "NAMA DENGAN PELANGGAN DOUBLE" ECHO UNTUK NAMA DALAM "NAMA $"; Adakah echo "$ nama" selesai keluar 0
Simpan fail dan keluar, kemudian jalankan seperti berikut:
$ ./nama.shGunakan petikan berganda dalam skrip
5. Gunakan fungsi dalam skrip
Kecuali skrip yang sangat kecil (dengan beberapa baris kod), selalu ingat untuk menggunakan fungsi untuk memodulasi kod anda dan membuat skrip lebih mudah dibaca dan boleh diguna semula.
Sintaks untuk fungsi menulis adalah seperti berikut:
fungsi check_root () command1; perintah2; Atau check_root () command1; perintah2;
Untuk kod baris tunggal, gunakan aksara penamatan selepas setiap arahan seperti ini:
check_root () command1; perintah2;
6. Gunakan = bukan == untuk perbandingan rentetan
Perhatikan bahawa ==
adalah sinonim untuk =
, oleh itu hanya gunakan satu =
Untuk perbandingan rentetan, contohnya:
value1 = "Tecmint.com "value2 =" Fossmint.com "jika [" $ value1 "=" $ value2 "]
7. Gunakan $ (perintah) dan bukannya 'perintah' warisan untuk penggantian
Penggantian arahan menggantikan arahan dengan outputnya. Gunakan $ (perintah)
bukannya backquotes 'Perintah'
untuk penggantian arahan.
Ini disyorkan walaupun oleh alat ShellCheck (menunjukkan amaran dan cadangan untuk skrip shell). Sebagai contoh:
user = 'echo "$ uid"' user = $ (echo "$ uid")
8. Gunakan baca sahaja untuk mengisytiharkan pembolehubah statik
Pembolehubah statik tidak berubah; Nilainya tidak dapat diubah setelah ditakrifkan dalam skrip:
readonly passwd_file = "/etc/passwd" readonly group_file = "/etc/Group"
9. Gunakan nama huruf besar untuk pembolehubah persekitaran dan huruf kecil untuk pembolehubah tersuai
Semua pembolehubah persekitaran bash dinamakan dengan huruf besar, oleh itu gunakan huruf kecil untuk menamakan pembolehubah tersuai anda untuk mengelakkan konflik nama berubah:
#define pembolehubah tersuai menggunakan huruf kecil dan gunakan huruf besar untuk pembolehubah env nikto_file = "$ home/muat turun/nikto-master/program/nikto.pl "perl" $ nikto_file "-h" $ 1 "
10. Sentiasa melakukan debugging untuk skrip panjang
Sekiranya anda menulis skrip bash dengan beribu -ribu baris kod, mencari kesilapan mungkin menjadi mimpi ngeri. Dengan mudah membetulkan perkara sebelum melaksanakan skrip, lakukan beberapa debugging. Menguasai tip ini dengan membaca melalui panduan yang disediakan di bawah:
- Cara Membolehkan Mod Debugging Skrip Shell Di Linux
- Cara Melakukan Sintaks Memeriksa Mod Debugging Dalam Skrip Shell
- Cara mengesan pelaksanaan arahan dalam skrip shell dengan pengesanan shell
Itu sahaja! Adakah anda mempunyai amalan skrip bash terbaik untuk dikongsi? Jika ya, kemudian gunakan borang komen di bawah untuk melakukannya.
- « LNAV - menonton dan menganalisis log Apache dari terminal Linux
- STRASH -CLI - Alat Trashcan untuk Mengurus 'Sampah' dari Linux Command Rine »