Por padrão, History
registra a hora em que você executou um comando, mas não o exibe. A razão para isso é quando você executa o comando History
, ele procura por uma variável de ambiente chamada HISTTIMEFORMAT
, que informa como formatar o tempo. Se o valor for null
ou não for definido, por padrão, ele não será exibido.
Um exemplo com algum tempo -
[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %t '
[qweet@superbox ~]$ history
1 2012-03-06 su -
2 2012-03-06 [email protected]
3 2012-03-06 mysql
4 2012-03-06 ll
5 2012-03-06 cd /opt/
6 2012-03-06 ll
7 2012-03-06 exit
8 2012-03-06 ll
9 2012-03-06 ls -lsa
10 2012-03-06 cd ../
11 2012-03-06 ll
12 2012-03-06 ll
....
Mas isso não é tudo. Como o HISTTIMEFORMAT
usa valores de strftime
(os quais você pode encontrar aqui btw), pode fazer todo tipo de coisas mágicas. Mas para o que você quer fazer, os seguintes trabalhos.
[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %T %t'
[qweet@superbox ~]$ history | grep -e "2012-03-06 14:48"
1006 2012-03-06 14:48:05 export HISTTIMEFORMAT='%F %T %t'
1007 2012-03-06 14:48:07 history
...
Além disso, se você quiser que seu HISTTIMEFORMAT persista, considere anexá-lo ao seu bashrc
da mesma forma;
echo 'HISTTIMEFORMAT="variables here"' >> ~/.bashrc
Você verá as alterações quando abrir uma nova guia no terminal ou efetuar logout e entrada.