bash 历史文件有最大大小吗?

bash 历史文件有最大大小吗?

我可以增加 bash 中命令历史记录的大小吗?

请注意,我在本科生天体物理系使用的是 Red Hat Linux 计算机(因此我没有获得那么多特权)。

答案1

您可以执行以下操作,而不是指定数字

unset HISTSIZE 
unset HISTFILESIZE
shopt -s histappend

在这种情况下,只有您的磁盘大小(以及您的“最大文件限制”,如果您的操作系统或文件系统有的话)是限制。

但是,请注意,这最终会越来越减慢 bash 的速度。看到这个Bash常见问题解答文档Debian 管理文章(原链接已失效,照照镜子吧:存档.isArchive.org)以获得可扩展性更好的技术。

答案2

@Philomath,取消设置这些环境变量对我来说根本不起作用!对我来说,这会导致 bash 使用其内置默认值(看起来)将 .bash_history 截断到大约 9KiB。

对我有用的是我的 .bashrc 中的以下内容:

export HISTSIZE=
export HISTFILESIZE=
shopt -s histappend

答案3

您可以使用对数旋转保留旧条目。例如,它允许您设置将触发存档的大小限制。它通常从每日 cronjob 运行,但您也可以从.bash_logout脚本中调用它。

相关内容