📅  最后修改于: 2023-12-03 15:12:47.958000             🧑  作者: Mango
当我们在 Bash 中使用命令行时,Bash 会自动记录我们使用过的命令历史。这可以帮助我们保持对命令历史的跟踪,并在以后使用相同的命令时快速调用。然而,有时候 Bash 的历史记录中出现重复命令会给我们带来一定的困扰,尤其是在执行长时间操作时。
本文将介绍如何防止 Bash 历史记录中出现重复的历史记录行。
Bash 中有一个名为 HISTCONTROL 的环境变量,它允许我们控制历史记录中的哪些命令不会被记录下来。我们可以在 .bashrc
文件中设置 HISTCONTROL 变量。
HISTCONTROL=ignoreboth:erasedups
这会告诉 Bash 忽略历史记录中的空命令和被命令开头 空格
前缀了的命令,同时还会删除连续的重复行。
Bash 中还有一个名为 HISTSIZE 的环境变量,它用于设置历史记录缓存的最大长度。如果我们设置 HISTSIZE 变量,Bash 会自动删除历史记录中最旧的行,以保持历史记录缓存的长度不超过 HISTSIZE 的长度。
HISTSIZE=1000
这会告诉 Bash 保持历史记录缓存的长度为 1000 行,如果历史记录缓存超过 1000 行,Bash 将自动删除最旧的行。
可以通过使用 HISTCONTROL 和 HISTSIZE 环境变量来控制 Bash 历史记录中的重复行。这样做可以让我们更好地管理历史记录缓存,并避免出现不必要的重复行。