В каких ситуациях пользователь не позволял оболочке записывать свою команду в историю?

Если я добавлю export HISTCONTROL=ignorespace в .bashrc , bash не будет записывать какие-либо команды, у которых есть пробелы перед ними в историю. Но я не понимаю, в каких ситуациях это будет полезно. Может ли кто-нибудь привести примеры?

Если ваши команды содержат пароли или другую конфиденциальную информацию

Другое использование – это команды, которые вы не хотите случайно повторять, например rm -rf * . Я широко использую историю и иногда случайно попадаю в Enter, когда команда, которую я извлек из истории, не та, которую я искал. Разумеется, реальное решение – всегда внимательно читать команды перед их исполнением. Но, будучи немного неуклюжим, я предпочитаю также сохранять особенно разрушительные команды из своей истории в качестве дополнительной меры предосторожности.

Бывший мой коллега сделал это с большинством команд cd и ls , чтобы записать только «полезные» команды.

Конфиденциальность данных. В тот момент, когда правоохранительные органы нарушают вашу дверь, вы можете не захотеть, чтобы они обнаружили остатки

  • где вы запустили последнюю версию прокрутки Wwarez из
  • какие фильмы вы недавно разорвали и накормили в поток
  • пароли, переданные через аргументы в программы шифрования / дешифрования

Серьезно, это, вероятно, эквивалентно строгой настройке конфиденциальности в вашем браузере, не позволяя ей записывать историю серфинга.

Если вы контролируете версию .bash_history , это полезный способ отметить определенные команды как «специальные». В сочетании с history-search- * , это способ просто нажать Space + m + Up + Enter для запуска make --directory ~/dev/tilde clean и Space + e + Up + Enter для запуска editor ~/.bash_history , оба из которых я использую для ведения файла истории Bash.