Terminal
終端重新啟動後未保存 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
問題可能是該目錄
~/.cache/zsh/
不存在。如果不存在,Zsh 會為您創建歷史文件,但不會為您創建不存在的目錄。此外,在 macOS 上,您不需要設置歷史文件本身。這已經在
/etc/zshrc
.最後,(這與您的問題無關,只是一個提示)您應該始終確保
HISTSIZE
比SAVEHIST
使用任何HIST_*_DUPS
選項時至少大 20% 。否則,一旦你的歷史超過 .zsh 就無法有效消除重複SAVEHIST
。所以,在你的情況下,我會把它增加到HISTSIZE=12000
或更大。所以無論如何:
- 嘗試註釋掉你的
HISTFILE
行,或者
- 創建您希望 Zsh 寫入文件的目錄,
看看是否有幫助。