Есть ли способ повлиять на поведение истории Bash?

В терминале история bash часто полезна, когда вы ищете командную строку, которую вы уже использовали. Но есть ли способ повлиять на поведение истории bash (то есть, какие команды сохраняются, как долго они сохраняются, сколько сохраняются и т. Д.)?

3
задан 25 December 2010 в 22:33

4 ответа

Установка метки времени для истории:

  • По умолчанию, история не добавляют с меткой времени, но легко настроить его для отображения метки времени, просто необходимо установить одну переменную среды HISTTIMEFORMAT.

    export HISTTIMEFORMAT="%h/%d - %H:%M:%S "

  • Выполните историю снова для наблюдения результата. alt text
  • Если Вы не хотите сохранять команды в истории, то

    export HISTSIZE=0

ПЕРЕМЕННЫЕ:

  • HISTFILE - Средства управления, где файл истории сохранен.
  • HISTFILESIZE - Средства управления, сколькими история управляет для хранения в HISTFILE.
  • HISTSIZE - Средства управления, сколькими история управляет для хранения в списке предыстории текущей сессии.
  • HISTIGNORE - Средства управления, который управляет, чтобы проигнорировать и не сохранить к списку предыстории.

Примечание:

  • Вы будете потеря Ваши настройки, после того как Вы закрываете свой терминал. Таким образом, если Вы хотите, чтобы это имело постоянно затем, необходимо добавить вышеупомянутую команду к ~/.bashrc или ~/.bash_aliases.
3
ответ дан 25 December 2010 в 22:33

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

  • HISTCONTROL: контролирует, как значения сохраняются в вашей истории. Здесь можно ввести значения ignorespace, ignoredups и erasedups (разделить их двоеточием).
  • HISTFILE: устанавливает местоположение файла истории.
  • HISTFILESIZE: устанавливает максимальное количество строк в файле истории.
  • HISTIGNORE: есть список шаблонов, которые bash игнорирует (см. другой ответ для синтаксиса).
  • HISTSIZE: содержит ряд строк, которые запоминаются в реальной оболочке.
  • HISTTIMEFORMAT: содержит выражение для форматирования записи (см. другой ответ )
0
ответ дан 25 December 2010 в 22:33

Вы можете добавить строку типа

export HISTFILESIZE=5000

в ~/.bashrc, чтобы увеличить размер истории. По умолчанию команды, начинающиеся с пробела, не сохраняются. Это связано с export HISTCONTROL=ignoreboth, который по умолчанию включен в Ubuntu.

Вы также можете игнорировать команды, начинающиеся с l или which, используя

export HISTIGNORE="l*:which*"
0
ответ дан 25 December 2010 в 22:33

Есть способ рассказать истории НЕ запоминать команду: просто начните с пробела. Есть также очень простой способ получить определенную команду: введите CTRL + R и слово из команды, которую вы ищете.

Конечно, есть способ увеличить историю по умолчанию, которая составляет 500 строк по умолчанию ... но я не знаю как, извините!

0
ответ дан 25 December 2010 в 22:33

Другие вопросы по тегам:

Похожие вопросы: