Como pesquisar na minha história do ZSH

Como pesquisar na minha história do ZSH

A maioria de nós passa nosso tempo no terminal, executando comandos, configurando servidores, desenvolvendo ferramentas e mais. Em alguns casos, nos encontramos executando comandos semelhantes repetidamente.

Embora você possa criar scripts para automatizar essas tarefas, às vezes os comandos podem variar um pouco. Se esse cenário acontecer, o histórico de comando é o melhor caminho a seguir.

História do ZSH

Zsh é uma concha popular construída em cima da festa. Ele armazena seu histórico de comando no .arquivo zsh_history no seu diretório doméstico.

Se o seu shell ZSH não suportar o histórico de comando por padrão, consulte nosso artigo de histórico de comando do ZSH para aprender como habilitá -lo.

O número total de comandos que o comando zsh pode armazenar no arquivo de história depende da variável $ savehist.

Como usar o histórico de comando ZSH

Agora que sabemos que o shell ZSH salva seus comandos em um arquivo, vamos identificar como podemos usá -lo para facilitar o uso do terminal.

Para visualizar todos os comandos armazenados em seu arquivo de história do ZSH, use o comando History.

Se você executar o comando de história sem argumentos, o ZSH mostrará todos os comandos armazenados no arquivo de história:

história

Abaixo está um exemplo de saída:

38 eco $ histfile
39 ZSH
..
53 HISTÓRIA
54 Env
55 CAT .ZSHRC

Na maioria dos casos, o comando de história exibirá uma extensa lista de todos os seus comandos executados. Você pode colocar a saída para comandos como Grep para procurar um comando específico ou menos para navegar facilmente.

história | Grep Echo

Ou menos:

história | menos

O comando da história também suporta notação numérica. Por exemplo, para mostrar os últimos n comandos no arquivo de história, use o -n onde n é o número de comandos para mostrar.

Por exemplo, para mostrar os últimos 5 comandos, podemos fazer:

História -5

Para mostrar do enésimo comando, use o +n.

Por exemplo, para mostrar a história do 10º comando ao último, use o comando como:

História +10

Como pesquisar histórico de comando zsh

Embora o comando da história possa ser útil para ver todo o seu histórico de comando, não é muito útil quando você deseja re-realizar um comando anterior.

Vamos agora focar em como podemos pesquisar no histórico de comando e executar novamente um comando anterior.

Arrow para cima e para baixo

A maneira mais comum de pesquisar no histórico de comando é usar as teclas de seta para cima e para baixo.

A seta para cima rolará pelo histórico de comando desde o mais recente até o primeiro. Depois de encontrar o comando que deseja re-fazer novamente, pressione Retornar para executá-lo.

Estrondo (!) formato

Outra maneira de pesquisar no histórico de comando é usar a exclamação (!) marca. Se você digitar duplo bang (!!), ele executará o comando mais anterior:

!!

O caso de uso mais comum para este formato é quando você esquece de executar um comando como sudo. Por exemplo, se você executar o comando apt como:

Atualização APT

Você pode executar novamente o comando como sudo usando a sintaxe:

sudo !!

O exposto acima fará novamente o comando apt como sudo.

Se você correr !n-onde n é o número de comando no histórico de comando-você pode executar um comando específico no arquivo de história.

Por exemplo, para executar o 12º comando no histórico de comando, você pode fazer:

!12

Se você não consegue se lembrar do número do comando que deseja executar, você pode usar o !formato de palavra para executar o comando começando com a palavra especificada.

Por exemplo, para executar o comando começando com a palavra Printenv:

!Printenv

O comando acima executará o comando mais recente que corresponde à palavra especificada.

Pesquisa recursiva

Outra maneira comum de pesquisar seu histórico de comando é a pesquisa recursiva. Para usá -lo, pressione Ctrl + R na sua sessão de terminal. Isso mudará sua sessão de terminal para o modo de pesquisa e você pode digitar comandos anteriores.

BCK-i-Search: _

À medida que você digita, o shell procurará um comando correspondente na história e sugere. Para procurar a próxima sugestão correspondente, pressione Ctrl + R.

Depois de encontrar um comando correspondente, pressione Retornar para executá -lo.

Printenv Prompt
BCK-i-Search: print_

Modificando o comportamento da história do ZSH

Embora não analisemos todos os ajustes que você pode executar para aprimorar o histórico de comando do ZSH, os seguintes são úteis para saber.

Para limpar seu histórico de comando, use o comando:

História -C

O exposto acima lhe dará uma saída indicando que o arquivo de histórico foi limpo.

Arquivo de histórico excluído.

Outra modificação que podemos fazer é para a variável $ histcontrol. Verifique a documentação do ZSH para saber mais sobre isso. No entanto, podemos dizer ao ZSH para evitar salvar comandos duplicados, adicionando a variável como:

Exportar HistControl = IgnoredUps

Conclusão

Este tutorial discutiu como trabalhar e usar o histórico de comando ZSH para melhorar sua experiência de terminal. Cobrimos como pesquisar no histórico de comando.

Obrigado pela leitura!