Belajar Bash Script – Debugging

Hampir seluruh bahasa pemrograman menyertakan debugger tool untuk melakukan debugging. Dengan adanya debugger tool tersebut mempermudah kita untuk memeriksa dan mengetahui di mana letak kesalahan suatu aplikasi yang hendak atau sudah dibangun.

Bash masuk dalam kategori shell scripting, berbeda dengan pemrograman, di shell scripting kita tidak memiliki semacam debugger tool. Meski demikian, kalau terjadi galat, secara asali ia akan tetap menampilkan di mana letak kesalahannya. Oleh karena itu, sebetulnya untuk proses debugging pada bash script tidaklah terlalu sulit.

Contoh pada skrip berikut:

Terlihat jelas bukan di mana letak kesalahannya? Ya tentu saja.

Jangan Dieksekusi

Dari tangkapan layar di atas, jika kita perhatikan echo "Nama Pengguna" tetap dijalankan meskipun di bawahnya tertera terjadi suatu galat (error). Mungkin untuk perintah echo tidaklah terlalu berpengaruh secara signifikan. Bagaimana jika perintah sebelumnya itu rm yang mana berfungsi menghapus, akan tetap dijalankan? Secara asali, ya tentu saja. Dilihat dari contoh di atas meski galat skrip tetap dijalankan. Hal ini akan sangat berbahaya, oleh karena itu untuk memastikan skrip benar-benar tidak terjadi galat, kita gunakan perintah:

Perintah -n berarti noexec dengan kata lain skrip tidak dijalankan. Perhatikan tangkapan layar di bawah ini:

echo tidak dijalankan dan galat tetap ditampilkan.

Tracing Script

Selain menggunakan perintah di atas, untuk proses debugging kita juga bisa menggunakan perintah -x yang berarti tracing. Dengan kata lain, perintah ini memberitahukan kepada shell untuk meng-echo setiap perintah setelah melakukan langkah-langkah substitusi, dengan demikian kita dapat melihat nilai dari suatu variabel juga nilai dari suatu perintah.

Untuk lebih mudahnya, coba salin skrip di bawah ini:

Kemudian jalankan dengan perintah:

Hasilnya akan terlihat seperti gambar di bawah:

Kita lihat ada tanda + dan ++. Untuk + artinya perintah dijalankan langsung, lalu ++ perintah ditampung dulu dalam sebuah variabel. Sedangakan yang tidak bertanda itu adalah output-nya.

Ayo Berlangganan!

Dapatkan pemberitahuan artikel-artikel terbaru super cepat, langsung dari surel Anda.
Lebih dari 320 telah berlangganan situsali.com, ayo segera daftarkan surel Anda sekarang juga!


Leave a Reply