Sto cercando di eseguire più comandi su una sola riga, per esempioCome eseguire più comandi in una singola riga?
(gdb) info threads; c
Args must be numbers or '$' variables.
ma sembra che gdb non supporta così. Qualche idea?
Sto cercando di eseguire più comandi su una sola riga, per esempioCome eseguire più comandi in una singola riga?
(gdb) info threads; c
Args must be numbers or '$' variables.
ma sembra che gdb non supporta così. Qualche idea?
comando Usa define
per definire il proprio comando:
(gdb) define mycommand
Type commands for definition of "mycommand".
End with a line saying just "end".
>info threads
>c
>end
(gdb) mycommand
Per informazioni dettagliate, è possibile consultare: https://sourceware.org/gdb/onlinedocs/gdb/Define.html#Define.
gdb non ha una sintassi per questo. Quindi, non puoi farlo.
Se si desidera eseguire sequenze memorizzate, consultare il comando "define".
si può raggiungere in primo luogo mettendo i punti di interruzione e quindi utilizzare il "comando all'interno GDB e parlare di tutti i comandi che dovrebbero Viene eseguito quando questo particolare i punti di interruzione colpisce. In questo modo siamo in grado di automatizzare la nostra sessione di debug pure.
(gdb) guida dei comandi comandi
Set da eseguire quando un punto di interruzione viene colpito. Dare numero breakpoint come argomento dopo "comanda". Senza argomenti, il punto di interruzione target è l'ultimo set. I comandi stessi seguono a partire dalla riga successiva. Digitare una riga contenente "end" per indicare la fine di essi. Dare "silenzioso" come prima riga per rendere silenzioso il punto di interruzione; quindi nessun output viene stampato quando viene colpito, ad eccezione di ciò che i comandi stampano.
(gdb) break main
Breakpoint 1 at 0x40113e: file thread.cpp, line 19.
(gdb) info b
Num Type Disp Enb Address What
1 breakpoint keep y 0x000000000040113e in main() at thread.cpp:19
(gdb) commands 1
Type commands for breakpoint(s) 1, one per line.
End with a line saying just "end".
>info locals
>print argc
>print argv
>backtrace
>end
(gdb) info b
Num Type Disp Enb Address What
1 breakpoint keep y 0x000000000040113e in main() at thread.cpp:19
info locals
print argc
print argv
backtrace
(gdb)
possibile duplicato di [comandi multipli in gdb separati da una sorta di delimitatore ';'?] (Http://stackoverflow.com/questions/1262639/multiple-commands-in-gdb-separted-by-some-sort -of-delimitatore) – ks1322