一、解决办法
-
查看是否设置了HISTSIZE变量:HISTSIZE变量设置了命令历史记录的条目数,如果这个值设置为0或者一个很小的数,可能会导致命令历史记录被禁用。可以使用
echo $HISTSIZE命令来查看HISTSIZE的值,如果是0或者一个很小的数,可以使用export HISTSIZE=1000命令来设置一个合适的值。 -
查看是否设置了HISTFILESIZE变量:HISTFILESIZE变量设置了保存在历史文件中的命令数量。类似于HISTSIZE,如果这个值设置为0或者一个很小的数,可能会导致命令历史记录被禁用。可以使用
echo $HISTFILESIZE命令来查看HISTFILESIZE的值,如果是0或者一个很小的数,可以使用export HISTFILESIZE=2000命令来设置一个合适的值。 -
检查是否设置了HISTFILE变量:HISTFILE变量指定了保存命令历史记录的文件路径。如果没有设置这个变量,或者设置了一个不存在的路径,那么命令历史记录将无法保存。可以使用
echo $HISTFILE命令来查看HISTFILE的值,如果为空或者指向一个不存在的路径,可以使用export HISTFILE=~/.bash_history命令来设置一个正确的路径。 -
检查bash配置文件:bash配置文件(例如
.bashrc、.bash_profile、/etc/bash.bashrc等)中可能包含禁止命令历史记录的配置。可以使用文本编辑器打开相应的配置文件,检查是否存在类似HISTSIZE=0、HISTFILESIZE=0、unset HISTSIZE、unset HISTFILESIZE等配置,如果存在,将其注释掉或者修改为合适的值。 -
检查是否启用了特殊的shell选项:有一些shell选项(例如
histappend、cmdhist等)可以影响命令历史记录的保存和显示。可以使用shopt命令来查看当前的shell选项,如果看到类似histappend off、cmdhist off的选项,可以使用shopt -s histappend、shopt -s cmdhist等命令来启用它们。
需要注意的是,上述方法仅适用于Bash shell,默认情况下,Linux系统使用Bash作为默认的命令行解释器。如果你使用的是其他的shell(如Zsh、Fish等),可能需要根据各自的配置文件和命令来进行调整。
二、参考链接
https://worktile.com/kb/ask/302337.html
5590

被折叠的 条评论
为什么被折叠?



