有什么方法可以将内部 gdb 命令的输出通过管道传输到某些 shell 命令,例如 grep
- [cmd] ! grep
中 mdb
的变体?
更清楚一点:在solaris mdb
中,您可以例如写
main::dis ! grep call
检测从 main 调用了哪些函数(或 grep 一些寄存器名称以查看它是如何更改的)。我很感兴趣,如果有这种可能只在 gdb 中这样做而不必从 gdb 切换。
最佳答案
我不确定我是否正确理解了你的问题。如果您想记录在调试 session 期间运行的 GDB 命令的结果,那么是的,GDB 对此提供支持。
show logging # displays weather logging is on / off
set logging on # enable logging
set logging off # disable logging
set logging file log-file.txt # set name for log file, default is gdb.txt
日志文件将在您的当前目录中生成。
此外,您可以使用附加调试 session 的日志或在每个调试 session 上创建新的
set logging overwrite <on/off>
关于gdb - 内部命令的管道输出到 shell 命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7120673/