如何让我的命令历史记录从 0 开始计数

如何让我的命令历史记录从 0 开始计数

如果我输入以下内容:

history -c
history

我明白了1110 history

为什么清除命令历史记录不会将计数重置为 1,以及如何重置计数?

注意:它正在重置数字,但不是重置为 1。如果我输入 5 个命令,数字会更改为 1114,但history -c只会将其重置为 1110。

答案1

来自bash手册页:

在启动时,历史记录从变量 HISTFILE 命名的文件(默认 ~/.bash_history)初始化...

当交互式 shell 退出时,最后的 $HISTSIZE 行将从历史列表复制到 $HISTFILE。如果启用了 histappend shell 选项(请参阅下面 SHELL BUILTIN COMMANDS 下 shopt 的描述),这些行将附加到历史文件中,否则将覆盖历史文件...

因此,仅在退出时文件~/.bash_history才会更新,并且如果histappend设置了,则默认情况下该文件不会被覆盖。

我的建议是,删除~/.bash_history,然后执行history -c

相关内容