HSTR é uma ferramenta baseada em ncurses para Bash e Zsh que torna mais fácil visualizar, navegar e pesquisar seu histórico de comandos.
O utilitário de linha de comando interativo visa tornar o preenchimento mais fácil e eficiente do que Ctrl + r
, enquanto também permite que você remova entradas de seu histórico de comandos e marque comandos para fácil acesso.
Quando chamado, o HSTR exibe uma lista de comandos usados recentemente organizados por classificação. Você pode alterar a visualização para mostrar o histórico de comando cronológico ou seus favoritos usando Ctrl + /
. Use as teclas Up / Down
para navegar pelo seu histórico de comando ou comece a digitar para encontrar o comando que está procurando.
O HSTR suporta 3 tipos de filtragem entre os quais você pode alternar usando Ctrl + e
: pesquisa por palavra-chave (substrings cuja ordem não importa) que é padrão, correspondência baseada em substring e correspondência de expressão regular. A pesquisa não diferencia maiúsculas de minúsculas por padrão, mas pode ser alterada usando Ctrl + t
.
Depois de encontrar o comando que está procurando, use Enter
para executá-lo ou pressione TAB
para concluí-lo (e saia do HSTR). Você pode adicionar um comando aos favoritos usando Ctrl + f
, ou remover comandos (por exemplo, comandos que podem conter dados confidenciais) com DEL
.
Relacionado: Marque comandos de terminal e recupere-os facilmente usando o Marker
A visualização de histórico padrão, filtragem e configurações sensíveis a maiúsculas/minúsculas podem ser alteradas permanentemente exportando a variável apropriada em seu arquivo ~/.bashrc
ou ~/.zsh
- você pode encontrar as várias opções de configuração aqui.
Você pode ver uma demonstração do HSTR no seguinte GIF animado (créditos da imagem: HSTR GitHub):
Para instalar o HSTR, consulte sua seção Instalação. Você encontrará pacotes para uma ampla gama de distribuições Linux, do Ubuntu, Fedora e openSUSE, ao Arch Linux, Genoo ou CentOS. Pacotes macOS também estão disponíveis.
Depois de instalado, execute o seguinte comando (execute-o apenas uma vez porque ele não verifica se a configuração HSTR já foi adicionada) para anexar sua configuração ao seu arquivo ~/.bashrc
:
hstr --show-configuration >> ~/.bashrc
. ~/.bashrc
Não tenho certeza se este comando também é compatível com Zsh, que eu não uso. Se você usar Zsh, pode ser necessário configurar hstr manualmente.
Isto é o que o comando hstr "--show-configuration" adicionou ao meu arquivo ~/.bashrc
:
# HSTR configuration - add this to ~/.bashrc
alias hh=hstr # hh to be alias for hstr
export HSTR_CONFIG=hicolor # get more colors
shopt -s histappend # append new history items to .bash_history
export HISTCONTROL=ignorespace # leading space hides commands from history
export HISTFILESIZE=10000 # increase history file size (default is 500)
export HISTSIZE=${HISTFILESIZE} # increase history size (default is 500)
# ensure synchronization between Bash memory and history file
export PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}"
# if this is interactive shell, then bind hstr to Ctrl-r (for Vi mode check doc)
if [[ $- =~ .*i.* ]]; then bind \'"\C-r": "\C-a hstr -- \C-j"\'; fi
# if this is interactive shell, then bind \'kill last command\' to Ctrl-x k
if [[ $- =~ .*i.* ]]; then bind \'"\C-xk": "\C-a hstr -k \C-j"\'; fi
Se você remover o HSTR, lembre-se de remover esta seção do arquivo ~/.bashrc
.
Agora você pode chamar HSTR usando Ctrl + r
no terminal.
Para personalizar o HSTR, incluindo a alteração de sua visualização de histórico padrão, atalho de teclado, comandos da lista negra (ocultá-los de qualquer visualização de HSTR) e assim por diante, visite sua página de configuração.
Esse post foi traduzido do site LinuxUprising.com pela rtland.team.
Confira a versão original desse post em inglês:
HSTR Makes Searching Your Bash Or Zsh Command History Easy