Дубликаты в файле истории даже после указания 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вызывает строки, соответствующиепредыдущийзапись в истории не сохраняется.

Связанный контент