Todo mundo sabe (ou deveria saber!) Que em um terminal as teclas de seta para cima e para baixo são usadas para navegar pelo histórico dos comandos usados.
Quando você usa o terminal diariamente, seu histórico de comandos provavelmente será uma longa lista de muitos comandos diferentes, tornando a navegação menos fácil. Apenas como exemplo, digamos que um mês atrás eu usei o iwconfig
com um conjunto determinado de parâmetros (como eu disse, é apenas um exemplo, não preciso mexer com isso agora), como posso lembrar desse comando específico com todos os seus argumentos e parâmetros sem ter que navegar de volta por centenas de comandos do histórico?
Eu sei que eu poderia usar history
para ter uma lista de comandos usados anteriormente e !n
executar novamente o comando n na lista mencionada, mas quando o histórico cresce, isso também não é muito prático.
O ideal seria ter algo que me permita usar algumas teclas de atalho para navegar pelo histórico, mas apenas entre as instâncias que contêm o que eu já digitei na linha de comando; Assim, no meu exemplo, depois de digitar iwconfig
, use algumas teclas (talvez PgUp e PgDown?) para navegar apenas pelas entradas que começam com iwconfig .
Se não for possível, também seria bom imprimir uma lista como history
do, mas que conterá apenas o que eu já digitei (suspeito que o comando history
e o grep
comando estejam envolvidos, mas não tenho certeza da sintaxe correta); mas a solução anterior de teclas de atalho seria a melhor opção.
fonte
iwconfig
, ele me mostrará uma instância que a contém (não necessariamente a mais recente), mas se eu usar as teclas de seta, ela navegará por todos os itens, não apenas pelos que contêm a string. Parece-me que ele selecionou um ponto específico da história para iniciar a navegação (em vez de começar de baixo como a tecla para cima), mas, além disso, a navegação é a mesma de sempre. Perdi alguma coisa?konsole
emulador de terminal.Depois de um pouco de prática, descobri como usar a solução alternativa.
Combinei a sintaxe correta para imprimir uma lista filtrada, fiz com
history | grep iwconfig
(não era tão difícil, afinal); com a saída que posso usar!n
com a lista filtrada agora fácil de ler.fonte
!n:p
. Isso imprime o comando antigo sem executá-lo e o coloca de volta no seu histórico. Em seguida, vá para ele com um único toque da seta para cima e agora você pode editá-lo. Existem muitos outros truques tolos como este: ss64.com/bash/history.htmlNão posso comentar a resposta de Stefan, mas você normalmente deve continuar pressionando Ctrl + R. Veja esta página para mais informações.
fonte
Pressione "ctrl + r" e digite a string de pesquisa.
Se não for o que você procura, novamente "ctrl + r"
Se encontrado, pressione Enter para executá-lo ou pressione a seta para a direita -> para editá-lo antes de usá-lo.
fonte