====== bash. Управление историей команд ======
----
===== Основные настройки =====
# вывод даты и времени в истории
export HISTTIMEFORMAT="%h %d %H:%M:%S "
# количество команд, хранимых в истории
export HISTSIZE=10000
# количество строк, хранимых в истории
export HISTFILESIZE=10000
# дополнять историю, а не перезаписывать последним сеансом
shopt -s histappend
# записывать историю сразу, после ввода команды, а не по завершению сессии
PROMPT_COMMAND='history -a'
# если переменная PROMPT_COMMAND уже была определна
PROMPT_COMMAND='$PROMPT_COMMAND; history -a'
# ignorespace - не сохранять строки начинающиеся с символа <пробел>
# ignoredups - не сохранять строки, совпадающие с последней выполненной командой
# ignoreboth - использовать обе опции 'ignorespace' и 'ignoredups'
# erasedups - удалять ВСЕ дубликаты команд с истории
# можно комбинировать:
# export HISTCONTROL=ignorespace:erasedups
export HISTCONTROL= ignoreboth
# Не сохранять команды ls, ps и history
export HISTIGNORE="ls:ps:history"
# Сохранять все строки многострочной команды в одной записи списка истории
shopt -s cmdhist
# Изменить Имя Файла с историй команд
export HISTFILE=~/.custom_file
* Полезный однострочник
echo -e 'export HISTTIMEFORMAT="%h %d %H:%M:%S "\nexport HISTSIZE=10000\nPROMPT_COMMAND="history -a"\nexport HISTCONTROL=ignoredups\nshopt -s cmdhist' >>~/.bashrc
* Временно не сохранять историю
HISTFILE=/dev/null