command 命令是一个很好用的调试命令,它配合断点使用,可以在指定的断点执行预先设置的命令,其语法为:command bread_id,这样会提示你输入你要执行的命令,以 end 结束。这个 bread_id 就是用 info b 打印出的结果,其实就是当前已经设置的断点序号,如:
如上打了 2 个断点,然后就可以为其中的断点设置预先要执行的命令,设置如下:
如上图,4个断点都加了 command 命令。 当断点被触发时,这些命令会被执行,这样的好处是不需要手动敲 c 来将程序继续执行下去,方便调试。
注意:最好同时设置 set height 0,因为 gdb 默认只打印一屏数据(具体多少行不清楚了),数据多了则会等待用户输入才往下执行。