MAL - Memória Auxiliar do Lutieri

quarta-feira, março 26, 2008

Bash buscando no histórico estilo CSH

Uma das coisas boas do shell padrão do FreeBSD(csh) é a forma de consultar comandos passados. Ao invés do ctrl-r que busca em qualquer parte dos comandos digitados é possível buscar por comandos que iniciam por algo. Um exemplo facilita a vida.

um trecho do meu histórico:

321 cd ..
322 cp Prison_Break-2006--_Great_Dragon_.part1.rar.part lala.part
323 unrar x lala.part
324 unrar x Prison_Break-2006--_Great_Dragon_.part1.rar
325 vi Prison_Break-2006--\(Great\ Dragon\)/My\ Special\ Programmes.txt
326 cd Desktop/
327 ccorreio

Caso eu queira reutilizar o comando número 325 bastaria eu digitar v ou vi e pressionar a seta para cima. E caso tivessem comandos anteriores a esse iniciados com v ou vi, respectivamente, eles iriam também ser sugeridos.

Como foi dito, no CSH isso já é padrão. Para o Bash fazer o mesmo deve-se fazer ou:

Adicione no arquivo ~/.inputrc:

"\e[A~": history-search-backward
"\e[B~": history-search-forward

Ou

os mesmos comandos em /etc/inputrc que vai refletir para todos usuários.

Uma outra dica que encontrei, no arquivo citado acima, no meu gentoo, foi é a que segue. Usada para descobrir o código das teclas para ser usado no bind.

# Quick dirty little note:
# To get the key sequence for binding, you can abuse bash.
# While running bash, hit CTRL+V, and then type the key sequence.
# So, typing 'ALT + left arrow' in Konsole gets you back:
# ^[[1;3D
# The readline entry to make this skip back a word will then be:
# "\e[1;3D" backward-word
#

Marcadores: ,

0 Comentários:

Postar um comentário

<< Home



Chat with Lutieri G. B.

Subscribe in a reader