回答:
デフォルトでHistory
は、コマンドを実行した時刻を記録しますが、表示しません。この理由は、History
コマンドを実行するとHISTTIMEFORMAT
、と呼ばれる環境変数を探し、それが時間のフォーマット方法を指示するためです。値がnull
設定されている場合、または設定されていない場合、デフォルトでは時間は表示されません。
いくつかの時間の例
[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
....
しかし、それだけではありません。HISTTIMEFORMAT
はstrftime
値をとるので(ここで確認できます)、あらゆる種類の魔法のようなことができます。しかし、あなたがしたいことのために、次のように動作します。
[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
...
また、HISTTIMEFORMATを保持したい場合は、bashrc
同様に追加することを検討してください。
echo 'HISTTIMEFORMAT="variables here"' >> ~/.bashrc
ターミナルで新しいタブを開くか、ログアウトしてからログインすると、変更が表示されます。