- Home
- »
- Scripting & Automasi
- »
- Bash Basic
- »
- Bash #40 Debugging with bashdb
Share:
Table of Contents

🖥️ Pengantar
Dalam pengembangan skrip Bash, debugging adalah bagian penting untuk memastikan skrip berjalan dengan benar dan tanpa kesalahan. bashdb adalah alat debugging untuk Bash yang memungkinkan eksekusi skrip secara langkah demi langkah, memberikan kendali penuh atas bagaimana skrip berjalan.
Artikel ini akan membahas:
Mengenal bashdb – Apa itu bashdb dan mengapa digunakan.
Menginstal bashdb dalam Linux – Cara menginstal dan menyiapkan bashdb.
Dasar Penggunaan bashdb – Perintah penting dalam debugging.
Contoh Implementasi Debugging dengan bashdb – Studi kasus debugging skrip Bash.
Praktik Terbaik dalam Menggunakan bashdb – Tips dan trik untuk debugging yang lebih efisien.
Mari kita mulai! 🚀
📌 1. Mengenal bashdb
bashdb (Bash Debugger) adalah alat debugging berbasis CLI yang memungkinkan kita melacak eksekusi skrip secara interaktif, menjalankan perintah satu per satu, serta memeriksa variabel dan kondisi dalam skrip.
🔹 Keuntungan Menggunakan bashdb:
Debugging interaktif dengan eksekusi langkah demi langkah.
Memungkinkan breakpoint untuk berhenti pada baris tertentu.
Memeriksa nilai variabel saat skrip berjalan.
Menjalankan perintah secara manual dalam sesi debugging.
📌 2. Menginstal bashdb dalam Linux
Sebagian besar distribusi Linux tidak menyertakan bashdb secara default, sehingga kita perlu menginstalnya secara manual.
🔹 Cara Instalasi pada Ubuntu/Debian:
sudo apt update && sudo apt install bashdb -y |
🔹 Cara Instalasi pada Fedora:
sudo dnf install bashdb -y |
🔹 Cara Instalasi pada Arch Linux:
sudo pacman -S bashdb |
📌 Catatan:
Pastikan Bash telah terinstal sebelum menggunakan bashdb.
📌 3. Dasar Penggunaan bashdb
Setelah instalasi selesai, kita dapat mulai menggunakan bashdb untuk debugging skrip Bash.
🔹 Menjalankan Skrip dengan bashdb
bashdb script.sh |
📌 Catatan:
Ini akan menjalankan script.sh dalam sesi debugging interaktif.
🔹 Menambahkan Breakpoint pada Baris Tertentu
break 5 |
📌 Catatan:
Skrip akan berhenti pada baris ke-5 untuk diperiksa sebelum melanjutkan eksekusi.
🔹 Menjalankan Skrip Langkah Demi Langkah
step
📌 Catatan:
step memungkinkan kita menjalankan satu perintah dalam skrip pada satu waktu.
🔹 Menampilkan Nilai Variabel Saat Debugging
print $var_name |
📌 Catatan:
print memungkinkan kita melihat nilai dari variabel tertentu selama debugging.
🔹 Melanjutkan Eksekusi Setelah Breakpoint
continue |
📌 Catatan:
continue akan melanjutkan eksekusi skrip hingga breakpoint berikutnya.
📌 4. Contoh Implementasi Debugging dengan bashdb
Berikut adalah contoh skrip Bash dengan bug yang dapat dideteksi menggunakan bashdb.
🔹 Contoh Skrip dengan Kesalahan
#!/bin/bash |
🔹 Menjalankan Debugging dengan bashdb
bashdb script.sh |
📌 Langkah Debugging:
Tambahkan breakpoint di baris 5: |
📌 5. Praktik Terbaik dalam Menggunakan bashdb
✅ Gunakan Breakpoint untuk Berhenti pada Baris Penting:
break 10 # Skrip berhenti di baris ke-10 |
✅ Periksa Nilai Variabel Secara Real-Time:
print $var_name |
✅ Gunakan step untuk Mengeksekusi Perintah Satu Per Satu:
step |
✅ Gunakan continue untuk Melanjutkan Eksekusi Setelah Debugging:
continue |
📌 Kesimpulan
bashdb adalah alat yang sangat berguna untuk debugging skrip Bash secara interaktif dan langkah demi langkah. Dalam artikel ini, kita telah membahas:
✅ Cara menginstal bashdb dalam berbagai distribusi Linux. ✅ Perintah dasar debugging seperti breakpoint, step, dan print. ✅ Contoh implementasi debugging dalam skrip Bash. ✅ Praktik terbaik dalam debugging dengan bashdb untuk meningkatkan efisiensi dan keandalan skrip.
Artikel Selanjutnya: 🔄 Defining Traps – Menggunakan trap untuk menangkap dan menangani sinyal tertentu dalam Bash (SIGINT, SIGTERM).
📚 Daftar Pustaka
Shotts, W. E. (2019). The Linux Command Line: A Complete Introduction. No Starch Press.
GNU Bash Debugger Manual (2023). GNU Bash Debugging Reference Manual. Retrieved from https://www.gnu.org/software/bashdb/
Linux Documentation Project. (2023). Advanced Bash Scripting Guide. Retrieved from https://tldp.org/LDP/abs/html/