GNU/Linux >> Linux の 問題 >  >> Linux

LinuxのZshで履歴コマンドのタイムスタンプを有効にする

履歴コマンド出力でタイムスタンプを有効にすると、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シェルでタイムスタンプを有効にするには、次のガイドを確認してください。

  • フィッシュシェルの履歴コマンドのタイムスタンプを有効にする

Linux
  1. Linuxコマンドラインに関する8つのヒント

  2. Linuxでhistoryコマンドを使用する方法

  3. Linux履歴コマンド

  1. Linuxの履歴コマンドの使用方法

  2. Linux履歴コマンド出力でタイムスタンプを有効にする方法

  3. Linuxの履歴コマンドを詳細に説明

  1. Linuxユーザー向けの12のIPコマンド例

  2. Linuxの履歴コマンド(Bashの履歴)

  3. 初心者向けのLinuxdirコマンド(10例)