Привет, хранитель команд!
Бесит, когда нужная команда не сохранилась в history? На всех своих серверах первым делом настраиваю правильное хранение истории. Делюсь проверенными настройками для ~/.bashrc.
Мгновенное сохранение команд
PROMPT_COMMAND='history -a'
Команда сохраняется сразу после ввода, а не при выходе из сессии.
Метки времени для команд
export HISTTIMEFORMAT='%F %T '
Теперь видно когда выполнялась команда:
2024-09-25 16:39:30Увеличение размера истории
export HISTSIZE=10000
Вместо дефолтных 500 команд — храним 10000. Хватает с запасом.
Исключение мусорных команд
export HISTIGNORE="ls:history:w:htop:pwd:top:iftop"
Эти команды не засоряют историю.
Пробел = команда не сохраняется
export HISTCONTROL=ignorespace
Поставил пробел перед командой — она не попадёт в историю.
Применение настроек
# source ~/.bashrc
Проверка параметров
# export | grep -i hist
Для всех пользователей
Создай файл
/etc/profile.d/history.sh с этими настройками — применится для всех.Поиск по истории
Быстрый поиск:
Ctrl+R и начинай вводить команду. Повторное Ctrl+R — следующее совпадение.Мой способ через grep:
# history | grep 'apt install'
⚠️ Опасный подвох HISTIGNORE
История из жизни: htop в исключениях → перезагрузил сервер командой reboot → зашёл обратно → запустил htop → закрыл → нажал стрелку вверх для повтора → там reboot (htop не сохранился!) → Enter на автомате → сервер ушёл в ребут 🤦
Мораль: осторожнее с исключениями и стрелкой вверх!
💡 Итог: правильная настройка history экономит часы при поиске той самой команды, которую вводил месяц назад.
____________________
Дополнительный материал:
🧠 - Btrfs: Революция Файловых Систем в Мире Linux
🧠 - Станьте мастером привилегий в Linux: Всё о sudo и su
🧠 - Docker Swarm & GitLab: Ускоряем Деплой Проектов с Шифрованием Секретов
#Linux_Mastery #linux #terminal #bash #productivity #sysadmin