如何完全清除gdb屏幕?

时间:2016-02-24 14:26:58

标签: gdb

我在~/.bashrc中使用它来使用F12清除终端:

bind '"\e[24~": "\C-k\C-u echo -ne \047\\0033\\0143\047\n"'

显然,这不会影响gdb或终端发起的任何其他程序。

如果输入gdb提示符,似乎正确清除:

!echo -ne "\033\0143"

那么,如何正确清除gdb屏幕,以便你无法回滚?

2 个答案:

答案 0 :(得分:0)

这取决于终端仿真器,回滚是终端仿真器功能。

This answer over on apple.stackexchange.com表示某些终端仿真器实现了ANSI标准的扩展,允许这样做:

printf '\e[3J'

其中printf是bash命令。因此,如果你的终端模拟器实现了这个,那么gdb中的等效echo应该可以工作。

答案 1 :(得分:0)

使用https://stackoverflow.com/a/35801000/4742108,最终解决方案是添加到~/.inputrc

"\e[24~":'!echo -ne \047\\0033\\0143\047\r'

这是有效的,因为gdb使用readline库。