使用 ! 时 Bash 的历史记录行为和 ! :p 旧命令已更改

使用 ! 时 Bash 的历史记录行为和 ! :p 旧命令已更改

突然我的 bash 历史记录行为发生了变化。当我使用 !num (其中 num 是历史记录中看到的命令编号)调用旧命令或使用 !num:p 显示命令(不运行它)时,该命令将从我的历史记录中消失。

这可以在这里看到:

[f@meshtretch 19.8G  ~ ] $ history 
    1  su
    2  exit
    3  whoami
    4  uptime 
    5  uname -a
    6  history 

[f@meshtretch 19.8G  ~ ] $ !3:p
whoami

[f@meshtretch 19.8G  ~ ] $ history 
    1  su
    2  exit
    3  uptime 
    4  uname -a
    5  whoami
    6  history 

我预计“whoami”命令仍会显示在第 3 位(而不仅仅是第 5 位),但它消失了。对于我系统上的所有用户来说,这是相同的行为。

到底是怎么回事?

答案1

事实证明我在 .bashrc 中做了以下操作:

HISTCONTROL=ignoredups:erasedups

当我想做的时候:

HISTCONTROL=ignoredups

但不知怎的,我忘记了我做了改变,因为我没有使用! !...:p 功能一会儿就可以了。然后我复制了.bashrc到我的各个用户帐户。

相关内容