Par défaut, History
enregistre l'heure à laquelle vous avez exécuté une commande, mais ne l'affiche pas. La raison en est que lorsque vous exécutez la History
commande, elle recherche une variable d'environnement appelée HISTTIMEFORMAT
, qui lui indique comment formater l'heure. Si la valeur est null
ou non définie, par défaut, elle ne s'affiche à aucun moment.
Un exemple avec un peu de temps
[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %t '
[qweet@superbox ~]$ history
1 2012-03-06 su -
2 2012-03-06 jbach@mobiletribe.net
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
....
Mais ce n'est pas tout. Puisque le HISTTIMEFORMAT
prend des strftime
valeurs (que vous pouvez trouver ici btw), vous pouvez faire toutes sortes de choses magiques. Mais pour ce que vous voulez faire, les travaux suivants fonctionnent.
[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
...
De plus, si vous voulez que votre HISTTIMEFORMAT persiste, pensez à l’ajouter à votre goût bashrc
;
echo 'HISTTIMEFORMAT="variables here"' >> ~/.bashrc
Vous verrez les modifications lorsque vous ouvrirez un nouvel onglet dans le terminal ou lorsque vous vous déconnecterez et vous connecterez.