Короткий ответ: echo 'set history save on' >> ~/.gdbinit && chmod 600 ~/.gdbinit
Длинный ответ:
История команд описана в руководстве GDB, 22.3 История команд . Создайте файл $HOME/.gdbinit
, измените его разрешения 0600
и добавьте следующее содержимое:
set history save on
Вы можете установить количество сохраненных прошлых команд следующим образом. Команда описывается как «Установить количество команд, которые GDB хранит в своем списке истории. По умолчанию это значение переменной среды GDBHISTSIZE или 256, если эта переменная не задана. Нечисловые значения GDBHISTSIZE игнорируются. Если size не ограничен или если 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
.gdbinit
Файл должен быть защищен от записи другими пользователями Linux.