Bash履歴で実行する各コマンドの日付と時刻を設定する方法

デフォルトでは、Bashでコマンドラインで実行されるすべてのコマンドは、履歴バッファに保存されるか、~/.bash_historyという名前のファイルに記録されます。これは、システム管理者がシステム上のユーザーによって実行されたコマンドのリストを表示したり、ユーザーがhistoryコマンドを使用して自分のコマンド履歴を表示できることを意味します。上記の

$ history
Linux History Command

historyコマンドの出力から、コマンドが実行された日付時刻は表示されません。これは、ほとんどまたはすべてのLinuxディストリビューションのデフォルト設定です。

本記事では、Bash履歴の各コマンドが実行された時刻情報を表示する方法について説明します。

各履歴エントリに関連付けられた日付時刻は、HISTTIMEFORMAT変数を設定して、履歴ファイルに書き込み、履歴コメント文字でマークできます。

これを行う方法は2つあります:一つは一時的に行い、もう一つは永続的に行います。

HISTTIMEFORMAT変数を一時的に設定するには、以下のようにエクスポートします:

$ export HISTTIMEFORMAT='%F %T'

上記のエクスポートコマンドでは、タイムスタンプ形式:

  1. %F – 同じ日付として展開される、%Y-%m-%d(年-月-日)。
  2. %T – 時間として展開されます;%H:%M:%S(時:分:秒)。

dateコマンドのマンページを追加の使用情報について読んでください:

$ man date

次に、次のようにコマンド履歴をチェックします:

$ history 
Display Linux Command History with Date and Time

ただし、この変数を恒久的に設定する場合は、お気に入りのエディタで~/.bashrcファイルを開いてください:

$ vi ~/.bashrc

そして、以下の行を追加してください(コメントで独自の構成としてマークしてください):

#my config
export HISTTIMEFORMAT='%F %T'

ファイルを保存して終了した後、以下のコマンドを実行して、ファイルに行われた変更を有効にします:

$ source ~/.bashrc

以上です!このガイドに関する興味深い履歴コマンドのヒントやトリック、またはご意見を、以下のコメントセクションで共有してください。

Source:
https://www.tecmint.com/display-linux-command-history-with-date-and-time/