Fórum Ubuntu Linux - PT

Área para Iniciantes => Dicas e Truques => Tópico iniciado por: arlei em 11 de Agosto de 2007, 15:27

Título: Otimizando o desempenho do history
Enviado por: arlei em 11 de Agosto de 2007, 15:27
Como sabemos o ambiente shell do GNU/Linux, no caso o bash, mantém no arquivo .bash_history uma lista com o histórico dos últimos comandos digitados. Com isso e o uso das teclas direcionais UP e DOWN nos permitem "navegar" por esta lista, de modo a retornar com um comando já utilizado e que esteja em nosso histórico armazenado.

Porém por padrão esta navegação será por toda gama de comando já utilizados, o que por vezes faz com que percamos até mais tempo necessário do que digitarmos novamente o comando.

Com uma dica simples veremos então como fazer com que esta navegação seja otimizada de forma a permitir uma filtragem no histórico de comandos bastando inserir alguns caracteres do mesmo antes de usarmos as setas de navegação.

Agora as setas farão uma procura por contexto. Se você não digitar nada, o efeito será o mesmo que antes, mas se você digitar um caractere e pressionar a seta, ele só irá mostrar os comandos que comecem com aquele caractere. Portanto com este ajuste, se você digitar "ls" e pressionar a seta ele vai navegar apenas nos comandos que começam com ls.

Para que isso funcione desta forma primeiramente iremos criar no diretório $HOME do usuário desejado o arquivo oculto de nome .inputrc com o seguinte conteúdo abaixo:

Código: [Selecionar]
"\e[A": history-search-backward
"\e[B": history-search-forward

Agora basta fechar a seção atual e abrir uma nova para que a navegação no histórico dos comandos passe a funcionar desta forma mais otimizada.

Notas:

1. Por padrão o Linux armazena no .bash_history os últimos 500 comandos utilizados, mais este número pode ser modificado editando o seu arquivo .bashrc e adicionado as seguintes linhas:

Código: [Selecionar]
export HISTFILESIZE=XXXX
export HISTSIZE=XXXX

Onde, XXXX deve ser substituído pela quantidade desejada.

2. Como configuração padrão do sistema como um todo existe o arquivo /etc/inputrc, ou seja, caso se deseje que estas novas configurações passem a valer para todos usuários do sistema basta adicionar aquelas 2 linhas do .inputrc neste arquivo.

T+
Arlei
Título: Re: Otimizando o desempenho do history
Enviado por: rjbgbo em 11 de Agosto de 2007, 17:00
Mais uma ótima dica Arlei, também tinha acabado de ver no Planeta Ubuntu-br
É mais um que vai p/ minha pasta de Favoritos Ubuntu
Título: Re: Otimizando o desempenho do history
Enviado por: arlei em 11 de Agosto de 2007, 20:38
Mais uma ótima dica Arlei, também tinha acabado de ver no Planeta Ubuntu-br
É mais um que vai p/ minha pasta de Favoritos Ubuntu

Valeu rjbgbo,

acabei publicando esta dica no Planeta e também aqui no fórum.

[]'s
Arlei
Título: Re: Otimizando o desempenho do history
Enviado por: zoroastro em 11 de Agosto de 2007, 21:12
EXcelente Arlei, muito bom, valeu!

facilitou minha vida :D
Título: Re: Otimizando o desempenho do history
Enviado por: chumbinho8 em 11 de Agosto de 2007, 21:19
vlw kra
com isso e com o tab o terminal é imbativel :D