В истории bash нет повторяющихся строк [дубликат]

На этот вопрос уже есть ответ здесь:

Предположительно, добавление экспорта HISTCONTROL = ignoreboth в .bashrc поможет, но на практике я вижу, что в моем файле .bash_history все еще существуют повторяющиеся строки.

Вы можете увидеть мой .bashrc ниже.

export HISTFILESIZE=100000
export HISTSIZE=100000 
export HISTIGNORE="ls*:rm*:cd*:CD*:ps*:exit*:reset*:clear*:synaptic*:mkdir*:cat*"
export HISTCONTROL=ignoreboth
shopt -s histappend
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

Кто-нибудь знает, почему у меня все еще появляются повторяющиеся строки?

3
задан 15 May 2013 в 14:23

2 ответа

HISTCONTROL влияет только на новые строки истории.
Что я думаю, автор, что такое способ редактирования существующего файла истории.

nl ~/.bash_history | sort -k 2 | uniq -f 1 | sort -n | cut -f 2 > temp_file
, за которым следуют
temp_file > ~/.bash_history

Этот должен сохранять порядок строк, удаляя дубликаты из существующего файла истории.
Может оставить метки времени призрака, если вы включили метки времени.
Если у вас возникла эта проблема, прокомментируйте, и я подберу вторую уборку для них.

0
ответ дан 15 May 2013 в 14:23

"erasedups" должен помочь, ты source .bashrc после твоего изменения?

Не могли бы вы, пожалуйста, echo $HISTCONTROL и сообщить нам результат? Также: убедитесь, что вы действительно хотите сделать это на .bashrc, а не на .bash_profile ...

По сути, я подозреваю, что у вас просто нет HISTCONTROL в вашей среде.

0
ответ дан 15 May 2013 в 14:23

Другие вопросы по тегам:

Похожие вопросы: