.zsh_history ファイルからランダムに生成された (?) 数値を削除する

.zsh_history ファイルからランダムに生成された (?) 数値を削除する

コンピュータを開くたびに、.zsh_history常に次の数字が表示されます。

: 1563741867:0;zsh --version
: 1563741874:0;ls
: 1563741883:0;cd Desktop
: 1563741888:0;cd ..
: 1563741892:0;ls -a
: 1563741927:0;open .zshrc

ベストアンサー1

この数は明らかにランダムに生成されません。もしそうなら、数字は順序が合わず、互いに近いこともありません。これは、実際にイベントが発生した後の秒数を表す標準のUnix形式のタイムスタンプです。Unix時代(1970-01-01).

% date -d @1563741867
Sun Jul 21 22:44:27 CEST 2019

2番目の数字(例では常に0)は、コマンドの実行にかかる時間です。より正確には、次のプロンプトまでの時間です。コマンドがバックグラウンドに切り替えられてから費やされた時間は計算されません。

これら2つの数字の存在は、オプションによって制御されます。extended_history、デフォルトではオフになっています。 zshをsetopt extended_history削除して再起動すると、.zshrczshが新しい履歴エントリを書き込むときにこの数字は消えます。 oh-my-zshなどのフレームワークを使用してこのオプションを有効にする場合は、フレームunsetopt extended_historyワークがロードされた後にそれらを設定または追加する方法を学びます。

タイムスタンプに他の構文を使用することはできません。これは意味がありません。人が直接使用できるのではなく、zshが再読み込みできる内部保存形式です。時間を確認したい場合は、一般的な方法は実行することです。fcまたはhistory内蔵タイムスタンプを印刷するオプションがあります。

history -i

おすすめ記事