Bash history
De Hackstore.com.br
Bash History
O "history" (ou histórico) no bash, apesar de extremamente poderoso, é muito pouco usado, além do tradicional "setinha pra cima" para exibir os últimos comandos.
Seu comportamento é regido por algumas variáveis:
HISTSIZE - Tamanho (em número de comandos) do histórico.
HISTFILESIZE - Tamanho máximo (em linhas) do arquivo selecionado acima. Se um valor for especificado, o arquivo será truncado para conter apenas o número especificado de linhas.
HISTFILE - Arquivo em que serão salvos os comandos (normalmente ~/.bash_history).
HISTTIMEFORMAT - Para adicionar a data e hora no comando history.
HISTCONTROL - Pode ter um dentre três valores: "ignorespace", "ignoredups" ou "ignoreboth". Se se usar o primeiro, comandos começando com espaço não vão para o histórico. Com o segundo (e isso é particularmente interessante), se um comando é executado mais de uma vez em seguida, só uma ocorrência vai para o histórico. O terceiro implementa ambas as funcionalidades.
Inserindo data e hora no comando history
Para adicionar a data e hora no comando history você precisa inserir o conteúdo "%h/%d - %H:%M:%S" na variável HISTTIMEFORMAT, dentro do arquivo /etc/profile então faça:
echo 'export HISTTIMEFORMAT="%h/%d - %H:%M:%S "' >> /etc/profile
Quando reiniciar sua máquina, ou fizer o logoff com o seu usuário, a variável automaticamente será ativada. Caso queira que a alteração surta efeito imediato, recarregue as variáveis do sistema:
source /etc/profile
Definindo quantidade de comandos armazenados no history
Para definir por exemplo que 10.000 linhas será o limite para o histórico do sistema, exporte as variáveis necessárias dentro do arquivo /etc/profile:
echo 'export HISTFILESIZE="10000"' >> /etc/profile echo 'export HISTSIZE="10000"' >> /etc/profile
Fontes:
http://www.dicas-l.com.br/arquivo/bash_history.php#.TuIAlpZKnk1 http://leodamasceno.blogspot.com/2010_08_01_archive.html