history に日時を表示する

history コマンドはとても便利ですが、実行日時がわからないのは意外と不便です。

目次

設定

環境変数

環境変数 HISTTIMEFORMAT に「%F %T」をセットすると、history 結果に日時が追加されるようになります。

永続化

今回は、シェル起動時に毎回呼ばれる .bashrc に HISTTIMEFORMAT='%F %T ' を追記しました。

$ sudo diff -u /root/.bashrc ~/.bashrc
--- /root/.bashrc   2019-04-27 23:49:18.540742407 +0900
+++ /home/link/.bashrc  2019-04-27 23:49:32.140385258 +0900
@@ -115,3 +115,4 @@
     . /etc/bash_completion
   fi
 fi
+export HISTTIMEFORMAT='%F %T '

結果

.bashrc に追記したので、シェルを抜けて再度ログインすると history 結果に実行日時が記録されます。

$ history | tail
 1924  2019-04-28 12:49:25 history | grep ssh
 1925  2019-04-28 12:49:25 sudo cp ~/.bashrc /root/
 1926  2019-04-28 12:49:25 echo "export HISTTIMEFORMAT='%F %T '" >> ~/.bashrc
 1927  2019-04-28 12:49:25 sudo diff -u /root/.bashrc ~/.bashrc
 1928  2019-04-28 00:16:46 sudo snap remove qownnotes
 1929  2019-04-28 12:49:26 sudo snap install rambox
 1930  2019-04-28 13:04:22 sudo add-apt-repository ppa:pbek/qownnotes
 1931  2019-04-28 13:05:05 sudo apt-get update
 1932  2019-04-28 13:05:24 sudo apt-get install qownnotes
 1933  2019-04-28 21:13:47 history | tail

※実行日時が記録されるのは、環境変数 HISTTIMEFORMAT を設定した以降です。