使用GDB摆脱“退出”提示:只要杀死进程并退出

考虑:

(gdb) q A debugging session is active. Inferior 1 [process 9018] will be killed. Quit anyway? (y or n) y 

什么是.gdbinit选项使GDB始终在退出请求中.gdbinit正在运行的进程?

我知道GDB可以附加到已经运行的进程上,所以在退出的时候杀掉它们会很糟糕。 但是,从这个过程开始,需要确认你的行为开始恼火,第二次退出。

closures全局禁用的许多其他有用的检查,例如,当您键入“delete”时确实要删除所有断点的问题。

禁用仅用于quit命令的提示会更好。 您可以通过将此挂钩添加到〜/ .gdbinit(对于当前用户)或/ etc / gdb / gdbinit(对于所有用户)来实现:

 define hook-quit set confirm off end 
 set confirm off 

有关详细信息,请参阅gdb doc

另一个select是定义一个新的命令,不需要确认就退出:

 define qquit set confirm off quit end document qquit Quit without asking for confirmation. end 

现在你可以使用qquit或者qq快速退出,而不用改变quit的默认行为

键入: Ctrl + D

之前

xx @ yy:〜>

(GDB)

(gdb)退出

然后

xx @ yy:〜>