Como todos sabemos o Unix/Linux é poderoso e na minha opinião tal característica deve-se ao terminal (shell). Como sou um “agarrado da janela preta”, e considerendo que muita das vezes os comandos são repetidos, sinto a necessidade de recuperar muitos deles. Para tal, existe o comando history que me faz um ‘relatório’ de todos os comandos que já introduzi na linha de comandos. A questão que coloquei a mim mesmo noutro dia foi: Então em que dia/hora inseri tal comando?
Como já referi, o comando history dá-me a informação de todos os comandos que já inseri na linha de comandos. Para que seja possível incluir informação sobre a data e hora, teremos de incluir uma pequena directiva no profile do utilizador. De forma simples, basta executar o seguinte comando:
echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bashrc
source ~/.bashrc
O comando irá acrescentar no ficheiro .bashrc uma variável de ambiente que permite ao comando history incluir a informação da data e hora em que um comando foi introduzido.
Mais alguns truques com o «history»
- Apagar todo o historial: history –c
- Se pretender executar novamente um determinado comando que já está no historial posso simplesmente fazê-lo através do !<id_do_comando>. Com base na primeira imagem deste artigo, se eu quiser voltar a executar o comando ifconfig faço !5
Dica do leitor José Fonseca
Em relação ao history, pode-se também utilizar as teclas “page up” e “page down” para pesquisar os comandos anteriores começados pelo texto que se tem no terminal e poder executá-los novamente sem ter de os escrever.
Para isso é só alterar as linhas 41 e 42 do /etc/inputrc retirando-lhes os comentários:
onde está:
# alternate mappings for "page up" and "page down" to search the history
# "\e[5~": history-search-backward
# "\e[6~": history-search-forward
ficará:
# alternate mappings for "page up" and "page down" to search the history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
Podem consultar muitos mais truques aqui