Saya mencoba menjalankan dua perintah sekaligus di gdb:
finish; next
Saya mencoba menggunakan ';' untuk memisahkan perintah tetapi gdb tidak membiarkan saya melakukan keduanya sekaligus.
Apakah mungkin untuk melakukan banyak perintah dalam gdb mirip dengan perintah bash yang dipisahkan oleh ';' pembatas?
execlp("gdb", "gdb", "-batch", "-n", "-ex", "bt full", ...
dan saya tidak bisa mematikan pagination.show user <function name>
untuk melihat sumbernya, misalnyashow user fn
.Jika Anda menjalankan gdb dari baris perintah, Anda dapat melewati beberapa perintah dengan parameter -ex seperti:
Ini digabungkan dengan tampilan dan perintah lain membuat menjalankan gdb kurang rumit.
sumber
GDB tidak memiliki karakter pemisah perintah seperti itu. Saya melihat sebentar, kalau-kalau akan mudah untuk menambahkan satu, tapi sayangnya tidak ....
sumber
Anda dapat melakukan ini menggunakan integrasi python di
gdb
.Akan lebih baik jika
s ; bt
melangkah dan kemudian mencetak backtrace, tetapi tidak.Anda dapat melakukan hal yang sama dengan memanggil juru bahasa Python.
python import gdb ; print(gdb.execute("s")) ; print(gdb.execute("bt"))
Dimungkinkan untuk membungkus ini menjadi perintah khusus, di sini disebut "cmds", didukung oleh definisi python.
Berikut ini contoh yang
.gdbinit
diperluas dengan fungsi untuk menjalankan banyak perintah.contoh doa:
sumber
saya berlari melintasi cara lain untuk melakukan beberapa perintah di GDB menggunakan dokumen Bash HERE.
contoh:
ini memiliki IMO nilai / kegunaan terbatas karena GDB berhenti setelah menjalankan daftar perintah.
sumber