Как полностью очистить историю Bash?

Я хочу удалить все предыдущие команды из истории моего сервера. Я использовал history -c, и кажется, что все очищено, но когда я ssh к серверу, все команды все еще там.

Как я могу очистить их навсегда?

318
задан 14 April 2018 в 22:30

8 ответов

Что сделать:

В каждой открытой оболочке удара (у Вас может быть несколько открытых терминалов):

history -c
history -w

Почему: Как отмечено выше, history -c освобождает файл ~/.bash_history. Важно отметить, что оболочка удара сразу не сбрасывает историю в bash_history файл. Так, важно (1) сбросить историю в файл и (2) очистить историю во всех терминалах. Это - то, что выше делают команды.

Ссылка: http://www.giannistsakiris.com/index.php/2007/09/13/how-to-clear-bash-history-and-what-to-watch-out-for/

144
ответ дан 14 April 2018 в 22:30

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

history -c && history -w

удачи!

0
ответ дан 14 April 2018 в 22:30

Очистить историю текущей оболочки:

history -c

Когда вы выходите из системы, история вашей текущей оболочки добавляется к ~ / .bash_history, который является кешем историй предыдущих оболочек, к максимальному числу ( см. HISTFILESIZE в "man bash").

Если вы хотите полностью удалить историю, то вам, по сути, нужно очистить ~ / .bash_history, что предложили многие из приведенных выше записей. Например:

history -c && history -w

Это очищает историю текущей оболочки, а затем вынуждает историю текущей оболочки (пустую) перезаписать ~ / .bash_history .... или, чтобы быть более точной, заставляет перезаписывать HISTFILE (по умолчанию ~ / .bash_history).

Надеюсь, это поможет.

0
ответ дан 14 April 2018 в 22:30
rm ~/.bash_history; history -c; logout

Теперь войдите в систему и убедитесь, что ваша стрела не дает вам ничего.

0
ответ дан 14 April 2018 в 22:30

Есть еще один, гораздо более простой способ: запустить history -c в окне терминала и пропустить все записи в файле bash_history.

0
ответ дан 14 April 2018 в 22:30

Еще один способ сделать это - удалить файл ~/.bash_history с помощью команды rm ~/.bash_history. При следующем входе в систему файл .bash_history будет создан автоматически.

0
ответ дан 14 April 2018 в 22:30

Попробуйте этот

отредактируйте свой .profile и добавьте строку ниже в конце файла

rm -f .bash_history

таким образом, каждый раз, когда вы входите, он удаляет ваш. файл bash_history автоматически для вас. Добавление опции -r рекурсивного удаления кажется опасным и не обязательным.

0
ответ дан 14 April 2018 в 22:30

Файл ~/.bash_history содержит историю.

Чтобы полностью очистить историю bash на сервере, откройте терминал и введите

cat /dev/null > ~/.bash_history

Другой альтернативный способ - связать ~/.bash_history с /dev/null

Однако,

Один раздражающий побочный эффект заключается в том, что записи истории имеют копию в памяти , и она будет возвращаться обратно в файл при выходе из системы .

Чтобы обойти это, используйте следующую команду (работал для меня):

cat /dev/null > ~/.bash_history && history -c && exit
0
ответ дан 14 April 2018 в 22:30

Другие вопросы по тегам:

Похожие вопросы: