Коротка відповідь: echo 'set history save on' >> ~/.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
.gdbinit
файл повинен захищати запис від інших, ніж ви в Linux.