Pesquisa avançada no histórico da linha de comando

2

Com Ctrl + R você pode pesquisar nos comandos anteriores. Se você pressionar Ctrl + R novamente, ele mostrará os comandos anteriores mais antigos. O problema é que essa busca é "unidirecional", sempre exibe resultados antigos toda vez que você pressiona Ctrl + R .

Agora, se eu clicar Ctrl + R muitas vezes e perder o resultado que eu estava procurando, eu tenho que parar minha busca ( Ctrl + G ) e reinicie-o desde o começo.

Existe algum comando ( Ctrl + algo ) para procurar resultados "mais recentes" do que o exibido atualmente?

    
por j1b3 18.02.2013 / 11:52

2 respostas

3

O Bash também possui uma pesquisa de histórico de encaminhamento, que é mapeada para Ctrl S .

Geralmente, esse atalho será mascarado pela ligação da chave de controle stop flow para o terminal (verifique com stty -a ). Isso fará com que o seu terminal pare de emitir qualquer coisa - não exatamente o que você deseja.

Para avançar a pesquisa do histórico, você tem duas opções:

  1. Desative totalmente o controle de fluxo: stty -ixon

  2. Vincular o controle de fluxo a outra coisa, por exemplo para Ctrl X com stty stop ^X

por 18.02.2013 / 11:57
1

Ctrl + S deve procurar o histórico "forward". Ou o que quer que bind -p diga a você é obrigado a forward-search-history .

    
por 18.02.2013 / 11:57