В ситуации, когда необходимо выйти из шелла не сохраняя историю введённых команд, можно воспользоваться любым из следующих способов.
# unset HISTFILE && exit # kill -9 $$ # history -c && exit # HISTSIZE=0 && exit
Полностью удалить файл с историей команд:
# rm -f $HISTFILE && unset HISTFILE && exit
Для того что бы запись истории не велась для команд, которые начинаются с пробела, достаточно переменной HISTCONTROL присвоить один из двух параметров:
- ignorespace — не записывать команды, которые начинаются с пробела;
- ignoreboth — не записывать команду, которая начинается с пробела, либо команду, которая дублирует предыдущую.
# export HISTCONTROL=ignoreboth
Можно так же направить переменную HISTFILE в /dev/null:
# export HISTFILE=/dev/null
Разумеется, обе этих переменных можно задать прямо в .bashrc или .bash_profile файлах.