如何设置 gdb
以便它保存命令历史记录?当启动新的 gdb
session 时,我想使用向上箭头键来访问先前 session 的命令。
最佳答案
简短回答:
mkdir -p ~/.config/gdb
echo 'set history save on' >> ~/.config/gdb/gdbinit
<小时/>
长答案:
命令历史记录包含在 GDB manual, 22.3 Command History 中。创建文件$HOME/.config/gdb/gdbinit
,并添加以下行:
set history save on
您可以使用以下命令设置保存的过去命令的数量。该命令被描述为“设置 gdb 在其历史列表中保留的命令数。默认为环境变量 GDBHISTSIZE 的值,如果未设置此变量,则为 256。GDBHISTSIZE 的非数字值为忽略。如果大小是无限的或者如果 GDBHISTSIZE 是负数或空字符串,则 gdb 在历史列表中保留的命令数量是无限的”。
set history size <size>
相关命令是 set history remove-duplicates <count>
。该命令被描述为“控制命令历史列表中重复历史条目的删除。如果计数非零,gdb将回顾最后的计数历史条目并删除与命令历史列表重复的第一个条目。当前条目被添加到命令历史记录列表中。如果计数不受限制,则此后向查找是无界的。如果计数为 0,则禁用删除重复历史记录条目”。
set history remove-duplicates <count>
默认情况下,gdb 将历史记录保存到文件 ./.gdb_history in the current directory 。如果您希望命令历史记录不依赖于您所在的目录,还包括:
set history filename ~/.gdb_history
关于debugging - 如何让 gdb 保存命令历史记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3176800/