Коли ви відкриваєте термінал bash, він завантажує вміст ~/.bash_history
та створює історію активної оболонки (в оперативній пам'яті), додаючи до неї кожну команду, виконану в цій оболонці - і лише їй, а не файлу.
Тільки коли ви закриєте баш-термінал, його історія додається до вашого ~/.bash_history
файлу.
Варіанти history
:
history -a # save the active shell's history to ~/.bash_history (appending)
history -c # clear the active shell's history
history -d NNN # delete row NNN of the active shell's history
history -r # reload the active shell's history from ~/.bash_history (appending)
history -w # save the active shell's history to ~/.bash_history (overwriting)
Параметри ~/.bashrc
файлу
Якщо ви хочете змінити цю поведінку, щоб тимчасова історія зберігалася ~/.bash_history
безпосередньо після виконання команди, додайте цей рядок:
PROMPT_COMMAND="history -a"
Якщо ви також хочете, щоб кожен термінал автоматично завантажував ~/.bash_history
файл після кожного виконання команди, замість цього додайте цей рядок:
PROMPT_COMMAND="history -a; history -c; history -r"
Якщо ви хочете виключити збереження певних команд (наприклад, все, що починається з sudo
і cat
), додайте цей рядок:
HISTIGNORE="sudo*:cat*"