質問 :Unix OS で以前にコマンドを実行した時刻を確認するにはどうすればよいですか? history コマンドはタイムスタンプを表示しません。
答え :HISTTIMEFORMAT を次のように設定します。最後の単一引用符の前にスペースがあることに注意してください。
$ export HISTTIMEFORMAT='%F %T '
上記の設定の後、履歴コマンドはすべてのコマンドの前にタイムスタンプを表示します。以下に示すように、履歴を検索することもできます。
$ history | less search for the required command
351 2009-09-08 09:53:47 ls -lrt 352 2009-09-08 09:53:49 cd .. 353 2009-09-08 09:55:39 wget -mk -w 20 -P top5-1 -N 354 2009-09-08 10:00:04 gk 355 2009-09-08 10:00:07 cd Bash/Wget/ 356 2009-09-08 10:00:07 ls /wget
注: 履歴コマンド ハックの完全なリストについては、「Linux コマンド ラインの履歴をマスターする」を参照してください。
他の時間形式で出力を表示する方法
使用可能なすべての日付形式を表示するには、次の操作を行います。
$ man strftime
strftime の定義に基づいて、履歴コマンドで使用できる日付と時刻の形式の例を次に示します。
AM / PM を表示するには:
$ export HISTTIMEFORMAT='%F %r ' $ history 351 2009-09-08 09:53:47 PM ls -lrt 352 2009-09-08 09:53:49 PM cd ..
dd-MON-YY 時刻形式で表示するには:
$ export HISTTIMEFORMAT='%d-%b-%Y %r ' $ history 351 08-Sep-2009 09:53:47 PM ls -lrt 352 08-Sep-2009 09:53:49 PM cd ..
タイムゾーンを表示するには:
$ export HISTTIMEFORMAT='%d-%b-%Y %r %Z' $ history 351 08-Sep-2009 09:53:47 PM PDT ls -lrt 352 08-Sep-2009 09:53:49 PM PDT cd ..