尽管设置了 shopt -s histappend,Bash 仍会丢失历史记录

尽管设置了 shopt -s histappend,Bash 仍会丢失历史记录

我丢失了上次会话中执行的所有命令 - 它们根本没有显示在历史记录中。需要做什么来防止这种情况发生?

我添加了

shopt -s histappend

只是为了这个目的..但它要么根本不起作用,要么至少不可靠。

~/spark >shopt  | grep histappend                                                             
histappend      on

答案1

以下组合似乎有效:

unset HISTFILESIZE
HISTSIZE=10000
PROMPT_COMMAND="history -a"
export HISTSIZE PROMPT_COMMAND
shopt -s histappend

答案2

检查 .bash_history 文件(及其父文件)中的权限

有时会故意改变这一点,以防止使用历史记录(并可能在命令行中捕获诸如密码之类的信息)

相关内容