履歴コマンド出力でタイムスタンプを有効にすると、Linuxで特定のコマンドがいつ実行されたかを見つけるのに役立ちます。 Bash履歴でタイムスタンプを有効にする方法はすでに見てきました。 。今日は、history
のタイムスタンプを有効にする方法を見てみましょう。 LinuxのZshシェルのコマンド。
Zshシェルで履歴コマンドのタイムスタンプを有効にする
HISTTIMEFORMAT
を使用すると、LinuxのBash履歴出力に日付とタイムスタンプを表示できます。 環境変数。ただし、Zshで環境変数を設定する必要はありません。 Zshには、デフォルトで、履歴コマンド出力に日付と時刻を表示するためのいくつかの組み込みフラグがあります。
まず、zsh
で以前に実行されたコマンドのリストを表示しましょう history
を使用したセッション コマンド:
% history
出力例:
1 lsb_release -a
2 uname -r
3 hostname
4 ls -l
5 touch ostechnix.txt
6 clear
ご覧のとおり、history
コマンドはタイムスタンプを表示しません。各コマンドのプレフィックス番号のみが表示されます。
履歴コマンドのタイムスタンプを有効にするには、つまりzshシェルのすべてのコマンドで日付と時刻を表示するには、-f
を使用します history
のフラグ コマンド:
% history -f
これで、history
に日付と時刻が表示されます zshシェルでのコマンド出力:
1 11/28/2020 17:00 lsb_release -a
2 11/28/2020 17:00 uname -r
3 11/28/2020 17:00 hostname
4 11/28/2020 17:00 ls -l
5 11/28/2020 17:00 touch ostechnix.txt
6 11/28/2020 17:00 clear
7 11/28/2020 17:01 history
ここで、-f
フラグは、'US MM/DD/YY hh:mm'
の完全な日付とタイムスタンプを印刷するために使用されます フォーマット
'European dd.mm.yyyy hh:mm'
で完全な日時スタンプを印刷する場合 フォーマットするには、-E
を使用します フラグ。
% history -E
出力例:
1 28.11.2020 17:00 lsb_release -a
2 28.11.2020 17:00 uname -r
3 28.11.2020 17:00 hostname
4 28.11.2020 17:00 ls -l
5 28.11.2020 17:00 touch ostechnix.txt
6 28.11.2020 17:00 clear
7 28.11.2020 17:01 history
8 28.11.2020 17:06 history -f
同様に、日付とタイムスタンプを'ISO8601 yyyy-mm-dd hh:mm'
で印刷するには フォーマットするには、-i
を使用します フラグ:
% history -i
出力例:
1 2020-11-28 17:00 lsb_release -a
2 2020-11-28 17:00 uname -r
3 2020-11-28 17:00 hostname
4 2020-11-28 17:00 ls -l
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
時間だけを印刷する場合は、-d
を使用します フラグ。
% history -d
出力例:
1 17:00 lsb_release -a
2 17:00 uname -r
3 17:00 hostname
4 17:00 ls -l
5 17:00 touch ostechnix.txt
6 17:00 clear
7 17:01 history
8 17:06 history -f
9 17:18 history -E
10 17:18 history -i
fc
を使用して履歴出力に日付とタイムスタンプを表示する コマンド
zshシェルの履歴出力でタイムスタンプを有効にする別の方法は、fc
指図。 fc
コマンド、 fの略 ix c ommandsは、最後に入力されたコマンドをインタラクティブシェルに一覧表示、編集、および再実行するために使用されるシェル組み込みコマンドです。
fc
を使用して履歴出力に完全なタイムスタンプを表示するには コマンド、実行するだけです:
% fc -lf
出力例:
1 11/28/2020 17:00 lsb_release -a
2 11/28/2020 17:00 uname -r
3 11/28/2020 17:00 hostname
4 11/28/2020 17:00 ls -l
5 11/28/2020 17:00 touch ostechnix.txt
6 11/28/2020 17:00 clear
7 11/28/2020 17:01 history
8 11/28/2020 17:06 history -f
9 11/28/2020 17:18 history -E
10 11/28/2020 17:18 history -i
11 11/28/2020 17:19 history -d
前述のように、-f
フラグは、米国形式で完全な日付スタンプを印刷します つまり、'MM/DD/YY hh:mm'
。
履歴出力のタイムスタンプをヨーロッパ形式で表示する場合 これはdd.mm.yyyy hh:mm
、-E
を使用します フラグ:
% fc -lE
出力例:
1 28.11.2020 17:00 lsb_release -a
2 28.11.2020 17:00 uname -r
3 28.11.2020 17:00 hostname
4 28.11.2020 17:00 ls -l
5 28.11.2020 17:00 touch ostechnix.txt
6 28.11.2020 17:00 clear
7 28.11.2020 17:01 history
8 28.11.2020 17:06 history -f
9 28.11.2020 17:18 history -E
10 28.11.2020 17:18 history -i
11 28.11.2020 17:19 history -d
12 28.11.2020 17:43 fc -lf
タイムスタンプをISO8601形式で表示するには (つまり、yyyy-mm-dd hh:mm
)、-i
を使用します フラグ:
% fc -li
出力例:
1 2020-11-28 17:00 lsb_release -a
2 2020-11-28 17:00 uname -r
3 2020-11-28 17:00 hostname
4 2020-11-28 17:00 ls -l
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
10 2020-11-28 17:18 history -i
11 2020-11-28 17:19 history -d
12 2020-11-28 17:43 fc -lf
13 2020-11-28 18:01 fc -lE
時間のみを表示する場合は、-d
を使用します フラグ:
% fc -ld
出力例:
1 17:00 lsb_release -a
2 17:00 uname -r
3 17:00 hostname
4 17:00 ls -l
5 17:00 touch ostechnix.txt
6 17:00 clear
7 17:01 history
8 17:06 history -f
9 17:18 history -E
10 17:18 history -i
11 17:19 history -d
12 17:43 fc -lf
13 18:01 fc -lE
14 18:02 fc -li
履歴の特定のエントリから始まるタイムスタンプを使用して、履歴出力を表示することもできます。たとえば、5日から始まる履歴出力を一覧表示するには zshでタイムスタンプを指定してコマンドを実行し、次を実行します:
% fc -li 5
出力例:
5 2020-11-28 17:00 touch ostechnix.txt
6 2020-11-28 17:00 clear
7 2020-11-28 17:01 history
8 2020-11-28 17:06 history -f
9 2020-11-28 17:18 history -E
10 2020-11-28 17:18 history -i
11 2020-11-28 17:19 history -d
12 2020-11-28 17:43 fc -lf
13 2020-11-28 18:01 fc -lE
14 2020-11-28 18:02 fc -li
15 2020-11-28 18:05 fc -ld
詳細については、manページを参照してください:
% man zsh
% man fc
魚を使用していますか シェル? Fishシェルでタイムスタンプを有効にするには、次のガイドを確認してください。
- フィッシュシェルの履歴コマンドのタイムスタンプを有効にする