Como reverter da pesquisa para o comando original

6

Seguindo as instruções aqui , editei por .bash_profile para ativar as setas para cima e para baixo para completar automaticamente o que eu digitei no shell com base nos comandos anteriores.

Eu adicionei ao meu .bash_profile:

# bind history search to up and down arrows
if [[ $- == *i* ]]
then
    bind '"\e[A": history-search-backward'
    bind '"\e[B": history-search-forward'
fi

Isso é ótimo, mas quero que a seta para baixo retorne ao meu texto original, se não conseguir encontrar o comando que estou procurando.

Por exemplo, digamos que eu tenha três comandos anteriores:

  • ls -l
  • ls -al

Agora, digito ls com a intenção de preenchê-lo automaticamente para ls -a .

Eu clico na seta para cima, a qual (com minha implementação atual) completa automaticamente meu texto para ls -al . Eu acerto a seta para cima novamente, que completa meu texto para ls -l . Neste ponto, decido que não encontrarei o comando que estou procurando. Se eu pressionar a seta para baixo, o texto mudará para ls -al , mas pressionando a seta para baixo novamente não altera nada. Eu quero pressionar a seta para baixo para retornar ao texto original ( ls neste caso) depois que eu cheguei ao comando mais recente da história.

Eu realmente apreciaria se alguém pudesse me ajudar ou me apontar na direção certa.

Obrigado!

    
por Zach Kirsch 03.09.2015 / 21:37

1 resposta

4

Ctrl+K eliminará o texto do cursor até o final da linha. Então, se você não moveu o cursor, Ctrl+K lhe dará (ou seja, efetivamente reverter para) seu texto original

    
por 03.09.2015 / 23:38