端末の再起動後にZSHコマンド履歴は保存されません

端末の再起動後にZSHコマンド履歴は保存されません

端末を再起動するたびに、矢印キーを使用して以前に端末に入力したコマンドを表示することはできません。私は以前もこれができました。 macOS Catalinaにアップデートして端末を再起動するたびに、AppleのデフォルトのZSHを使用するため、コマンド履歴はありません。

私のzshrcファイルは、次の設定を使用してコマンドを保持します。

# History in cache directory:
HISTSIZE=10000
SAVEHIST=10000
HISTFILE=~/.cache/zsh/history
setopt INC_APPEND_HISTORY
setopt SHARE_HISTORY 

ベストアンサー1

問題は、ディレクトリが~/.cache/zsh/存在しないことです。 histファイルが存在しない場合、Zshはそれを生成しますが、存在しないディレクトリは作成しません。

好みに応じて2つの解決策があります。

  • 設定した行を削除します$HISTFILE。 macOSではすでに/etc/zshrc
  • Zshでファイルを書き込むディレクトリを作成します。

ちなみに、何かを使うならHIST_*_DUPSオプション$HISTSIZE、常により20%以上大きくなければなりません$SAVEHIST。それ以外の場合、履歴がその値を超えると、Zshは重複エントリを効果的に削除できません$SAVEHIST。したがって、あなたの場合はそれHISTSIZE=12000以上を増やします。

おすすめ記事