即使指定了 HISTCONTROL 後,歷史文件中也會出現重複

即使指定了 HISTCONTROL 後,歷史文件中也會出現重複

我將 cygwin 與 bash 一起使用(在 Windows 7 pro 上)。我有以下內容.bashrc

# Don't put duplicate lines in the history.
export HISTCONTROL="ignoredups"

以及以下內容.bash_profile

# source the system wide bashrc if it exists
if [ -e /etc/bash.bashrc ] ; then
    source /etc/bash.bashrc
fi

# source the users bashrc if it exists
if [ -e "${HOME}/.bashrc" ] ; then
    source "${HOME}/.bashrc"
fi

然而命令歷史卻充滿了重複的內容。

答案1

ignoredups僅防止與前一行相符的重複項。所以,你的歷史不該包含

ls
ls

但它仍然可以包含

ls
cd
ls

man bash說(強調我的):

ignoredups導致行匹配以前的歷史條目不被保存。

相關內容