20

Я читал man-страницы для bash в самолете и наткнулся на переменную HISTIGNORE. Чтобы проверить это, я немедленно отредактировал свой .profile, чтобы определить эту переменную:

export HISTIGNORE=ls

Я проверил это, и это здорово! Он исключает простые команды 'ls' из моей истории, не исключая более интересных команд с длинными путями, но недавно собрав много мудрости от SU, я с нетерпением жду возможности узнать, что другие суперпользователи могут порекомендовать другим командам или извлечь другие уроки.

Что вы можете рассказать об использовании переменной HISTIGNORE в bash?

2 ответа2

23

Я игнорирую ls без команд, bg , fg , exit , pwd , clear , mount и umount:

Если вы включите это в строку HISTIGNORE вы можете подавить все, что пожелаете, добавив пробел в начале команды:

"[ \t]*" 

Это мой HISTIGNORE:

HISTIGNORE="&:ls:[bf]g:exit:pwd:clear:mount:umount:[ \t]*"

Я исключил некоторые другие вещи, которые у меня есть, это повторяющиеся команды, уникальные для моего сервера. Все, что вы делаете, это просто, хорошо исключить.

У меня есть другие вещи, которые я забыл добавить, но я далеко от своей коробки с Linux, поэтому у меня не хватает памяти.

9

Не сохраняйте тривиальные одно- и двухсимвольные команды в списке истории:

HISTIGNORE='?:??'

Если опция extglob включена, вы также можете использовать расширенные шаблоны, например

HISTIGNORE='a*( )'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .