如何跨会话保留我的 bash 历史记录?

BЈо*_*вић 37 linux fedora bash history

我正在开发一个运行 Fedora 9 的 x86 目标。

每当我重新启动它时,我的历史记录都会返回到某个状态,并且在重新启动之前我没有在会话中执行的命令。

我必须更改什么才能更新重新启动之前的历史记录?

小智 25

哪个历史?bash 历史?如果您丢失了 bash 历史记录并且一次有多个会话,那是因为每个会话都覆盖了其他会话的历史记录。

您可能想告诉 bash 不要每次都覆盖历史记录,而是附加到它。你可以通过修改你的 .bashrc 来运行shopt -s histappend

您还可以通过将 HISTSIZE 导出为一个大数字来增加历史文件的大小(以字节为单位,因此 100000 应该足够了)。

  • `HISTSIZE` 是要记住的命令数,而不是字节数。 (7认同)

icc*_*c97 14

我遇到了同样的问题 - 但我的.bashrc文件已经有了shopt -s histappend正确的HISTFILE, HISTSIZE, HISTFILESIZE.

对我来说,问题是我的.bash_history文件归root而不是我的用户名所有,所以我的用户永远无法在退出时保存到该文件。

  • 我刚刚发现我对 root 拥有的 .bash_history 有完全相同的问题。我希望我在失去所有可爱的历史之前就意识到了,但没关系:-) (4认同)
  • `sudo chmod your_user_name .bash_history` 做到了!谢谢。 (2认同)