zsh 的历史记录在哪里? (未找到“zsh_history”或“.zhistory”)

zsh 的历史记录在哪里? (未找到“zsh_history”或“.zhistory”)

我最近从 切换到bash并想要找到存储历史记录zsh的文件zsh

然而在主文件夹中,虽然有一个.bash_historyThere is nozsh_history.zhistory。我也尝试过locate但没有成功。如果我按向上箭头键,似乎某处有保存的历史记录

有人有想法吗

答案1

shell的历史文件zsh$HISTFILE

% ls -l $HISTFILE
-rw-------  1 kk  kk  352704 May  8 14:16 /home/kk/.zsh_history

如果未设置此变量,则不会保存任何历史记录。该变量没有默认值。

shell 有一个内存历史记录。这就是您使用箭头键滚动浏览的内容。一旦 shell 会话终止,内存中的历史记录显然会丢失。

.zshrc将此变量设置为(在您的文件中)的可能值是

HISTFILE=${ZDOTDIR:-$HOME}/.zsh_history

即,$ZDOTDIR/.zsh_history如果变量ZDOTDIR已定义且不为空,则返回,$HOME/.zsh_history否则返回。该变量不需要导出,因为它仅由当前 shell 会话使用。

ZDOTDIR变量确定.zshrc从何处获取文件和其他文件(如果未设置则$HOME使用)。ZDOTDIR

您可能还想SAVEHIST在手册中查找其他与历史相关的 shell 变量zsh

相关内容