Как я могу заставить gdb сохранить историю команд?

Как я могу настроить gdb так, чтобы это сохранило историю команд? При запуске нового gdb сессия я хотел бы использовать стрелку ключи для доступа к командам предыдущих сессий.

186
задан Frank 4 July 2010 в 14:20
поделиться

1 ответ

Краткий ответ: echo 'установить сохранение истории в' >> ~ / .gdbinit && chmod 600 ~ / .gdbinit


Длинный ответ:

История команд описана в руководстве GDB, 22.3 История команд . Создайте файл $ HOME / .gdbinit , измените его права доступа на 0600 и добавьте следующее содержимое:

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 в текущем каталоге . Если вы хотите, чтобы история ваших команд не зависела от каталога, в котором вы находитесь, также включите:

set history filename ~/.gdb_history
268
ответ дан 23 November 2019 в 05:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: