История команд в Linux

История команд хранится в домашнем каталоге каждого пользователя в файле
~/.bash_history
Суперпользователь может посмотреть историю команд любого пользователя указав полный путь к файлу
cat /home/username/.bash_history
История команд самого пользователя root хранится в
/root/.bash_history
Параметры сохранения истории команд указываются с помощью переменных окружения в файле
~/.bashrc
  • export HISTSIZE=10000 - количество строк, которые будут храниться в истории, в файле .bash_history. Увеличивает размер файла до 10000 строк
  • export HISTTIMEFORMAT="%h %d %H:%M:%S " - сохранение даты и времени выполнения команды
  • PROMPT_COMMAND='history -a' - записывать команду в историю сразу же после её выполнения
  • export HISTIGNORE="ls:ll:history:w:htop:pwd" - настраиваю исключения, которые не будут сохраняться в истории, чтобы не забивать список неинформативными командами
  • history вывод всего содержимого истории
  • history 10 вывод 10 последних строк из истории
  • history -d 5 удаление из истории строки с указанным номером
  • history -с очистка истории команд текущего сеанса
  • history -w запись в историю пустого списка, но при этом в истории останется последняя команда
  • cat /dev/null > ~/.bash_history && history -c && exit удаление всей истории

Для того, чтобы команда не попала в историю, можно перед ней поставить пробел. Она исполнится как обычно, но в историю не попадёт.

Запуск команд в командной строке MC не попадает в общую историю, а записывается в историю самого MC. Она находится в
/root/.local/share/mc/history