履歴は zsh に保存されません。

履歴は zsh に保存されません。

私はzshを使用しており、レコードはbashと同じでありたいです。私の中には次のものがあります~/.zshrc

export FZF_BASE=/usr/bin/fzf
export HISTFILE=$HOME/.histfile
export SAVEHIST=500
export HISTSIZE=500
plugins=(
...
fzf
)

ところで、何らかの理由で全くないのに~/.histfileなぜできないのでしょうか。私は何を見逃していますか?

答え1

上記のようにコメントからシェルは、シェルが終了するとシェル変数が参照するファイルにコマンドライン履歴を保存しますが、デフォルトではzshそれ以前は保存しません。HISTFILEしたがって、setを使用して対話型シェルを終了する前に、ファイルポップアップは表示されませんHISTFILE

、またはsetoptなどの各コマンドの後にシェルの履歴がファイルに書き込まれるように、シェルオプションを設定できます。しかし、おそらくマニュアルでこれらおよび関連するレコードに関連するシェルオプションを読む必要があります( 、次に、例えば検索してください)。INC_APPEND_HISTORYINC_APPEND_HISTORY_TIMESHARE_HISTORYzshoptionsman zshoptionsHIST

履歴関連のシェル変数(zshparamマニュアルに記載)は環境変数ではないため、エクスポートしないでください。

答え2

HISTFILE、in、bashおよびmayを変更した場合は0に設定し、必要な値に設定して記録を再開する必要がありzshます。HISTSIZE

HISTSIZE=0
HISTSIZE=500

関連情報