Я пытаюсь предотвратить bash
от сохранения повторяющихся команд в моей истории. Вот что у меня есть:
shopt -s histappend
export HISTIGNORE='&:ls:cd ~:cd ..:[bf]g:exit:h:history'
export HISTCONTROL=erasedups
export PROMPT_COMMAND='history -a'
Это работает отлично, пока я вошел в систему, а .bash_history
- в памяти. Например:
$ history
1 vi .bashrc
2 vi .alias
3 cd /cygdrive
4 cd ~jplemme
5 vi .bashrc
6 vi .alias
$ vi .bashrc
$ history
1 vi .alias
2 cd /cygdrive
3 cd ~jplemme
4 vi .alias
5 vi .bashrc
$ vi .alias
$ history
1 cd /cygdrive
2 cd ~jplemme
3 vi .bashrc
4 vi .alias
$ exit
Но когда я заходил в систему, мой файл истории выглядит следующим образом:
$ history
1 vi .bashrc
2 vi .alias
3 cd /cygdrive
4 cd ~jplemme
5 vi .bashrc
6 vi .alias
7 vi .bashrc
8 vi .alias
Что я делаю неправильно?
EDIT: удаление строк shopt
и PROMPT_COMMAND
из .bashrc
не устраняет проблему.