Отключить историю в Linux

Чтобы отключить историю в среде Linux, я выполнил следующие команды:

export HISTFILESIZE=0
export HISTSIZE=0
unset HISTFILE

Является ли такая комбинация команд достаточной или мне нужно также выполнить history -c или что-то еще?

Будет ли эта история отключена даже при перезагрузке сервера, или такие команды должны быть выполнены после перезагрузки снова и снова?

Ответ 1

Просто добавьте эту команду в файл запуска bash, который может быть /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profile или ~/.bashrc в зависимости от целевой области и дистрибутива, который настраивает bash. См. Раздел INVOCATION руководства bash (man bash).

shopt -u -o history

или

set +o history

Отключение истории.

Хотя вам нужно очистить историю один раз:

history -c

И также удалите файл ~/.bash_history.

Ответ 2

Для большинства случаев использования unset HISTFILE должно быть достаточно.

Это отключает запись файла истории, в то время как он по-прежнему позволяет прокручивать последние команды с помощью up/down.
Изменение HISTFILESIZE не влияет на отмену HISTFILE, так как это влияет только на то, сколько строк будет записано в файл истории при выходе оболочки. Если установлено значение 0 с установкой HISTFILE, тогда файл будет усечен до 0 при выходе.
Изменение HISTSIZE изменяет количество команд, которые будет помнить текущая оболочка.

Чтобы изменения были постоянными, ~/.bashrc или ~/.profile являются хорошими местами для вставки команд.

Ответ 3

Если вы хотите, чтобы он сохранялся при перезагрузке, вы можете добавить их в ~/.bashrc или /etc/profile.