Parfois, il arrive de vouloir retrouver une commande Linux que utilisée il y a quelques temps mais impossible de savoir exactement quand ! L'historique des commandes Bash vous aidera mais il peut être amélioré en ajoutant la date et l'heure de chaque commandes exécutées ! Voyons comment procéder à cet ajout.

Quand on souhaite avoir l'historique des commandes lancées précédemment sur son système, on lance la commande history et voici un exemple de retour :

503  history
504  free -tmo
505  apt-get update
506  clear
507  history

C'est bien pratique mais pas suffisamment ! Il manque la date et l'heure d'exécution de chaque commande !

Pour rajouter cette information, éditez le fichier .bashrc de l'utilisateur :

vi ~/.bashrc

Ajouter à la fin du fichier cette ligne :

export HISTTIMEFORMAT="%d/%m/%Y %T "
  • %d : numéro du jour
  • %m : numéro du mois
  • %Y : année sur 4 chiffres (%y pour l'avoir sur 2 chiffres seulement)
  • %T : heure complète

Pour plus d'infos sur les différentes valeurs possibles, consultez la liste complète.

Enregistrez votre fichier et fermez-le. Pour finir, déconnectez-vous du terminal et rouvrez une session.

Lancez quelques commandes pour tester et affichez votre historique avec la commande history. Vous devriez apercevoir la date et l'heure de chaque commande !

502  09/09/2016 13:56:31 free -tmo
503  09/09/2016 13:56:37 vi /etc/fstab
504  09/09/2016 13:56:51 ping free.fr
505  09/09/2016 13:57:11 cat /proc/cpuinfo
506  09/09/2016 13:57:15 history

Je précise que les commandes lancées avant l'ajout de HISTTIMEFORMAT ne seront pas datées dans l'historique ! Seules les nouvelles commandes seront prises en compte ;)