Pesquisando por comandos no histórico do bash
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 08 de junho de 2012
A shell bash é a shell padrão em sistemas baseados no Debian Gnu/Linux e sistemas derivados, como Ubuntu, Linux Mint, e vários outros.
É sempre conveniente manter um histórico de comandos grande, para evitar a redigitação de comandos complexos, longos e por vezes difíceis de relembrar.
Para isto, vale a pena definir nos arquivos de inicialização da shell, a variável HISTFILESIZE e HISTSIZE que definem o tamanho em linhas do arquivo .bash_history.
Estas variáveis são definidas no arquivo .bashrc
:
export HISTSIZE=10000 HISTFILESIZE=10000
No exemplo acima, são salvos os últimos 10.000 comandos. Meio exagerado, mas pode ser útil um dia.
Para pesquisar neste histórico podemos usar as setas de navegação para cima e para baixo, mas caso os comandos que quisermos executar não estejam no passado mais recente, podemos usar a busca reversa.
Para isto, digitamos <CTRL>+r:
(reverse-i-search)`':
E em seguida digitamos partes do comando que desejamos recuperar. No meu histórico de comandos, ao digitar deb, tenho o seguinte comando:
(reverse-i-search)`deb': sudo dpkg -i google-chrome-stable_current_i386.deb
O trecho digitado é deb e podemos ver este trecho antes do caractere ":".
Podemos então, simplesmente digitar <ENTER> ou então pressionar a seta à esquerda ou direita para editar o comando segundo nossa conveniência.