Довольно часто приходится искать в истории команд (bash/zsh/fish history) что-то полезное, но к сожалению редко используемое. Давайте посмотрим пару простых примеров использования history.
- Отображать дату и время в истории
history -E # для zsh
export HISTTIMEFORMAT='%F %T ' && history # для bash
6229* 27.8.2021 19:28 cd ..
6230* 27.8.2021 19:28 gcloud components update
6235 27.8.2021 20:43 ls -l
- Поиск по истории
Нажимаем CTRL+R и затем начинаем вводить слово для поиска, если результатов поиска несколько можно выбирать следующий повторным нажатием CTRL+R. Если нужно отредактировать найденную команду, используем для этого стрелки в лево или право.
- Повторить последнюю команду
- Можно использовать стрелку вверх;
- !! и нажать Enter
- !-1 и нажать Enter
- Control+P отобразит предыдущую команду
- Выполнить конкретную команду из истории
history
!5
- Выполнить команду из истории, которая содержит слово
!ps
- Убрать дублирующие записи из истории. Для этого добавьте в файл ~/.zshrc следующие строки
setopt EXTENDED_HISTORY
setopt HIST_EXPIRE_DUPS_FIRST
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_IGNORE_SPACE
setopt HIST_FIND_NO_DUPS
setopt HIST_SAVE_NO_DUPS
setopt HIST_BEEP