如果行不重复,如何在显示提示之前附加到bash历史记录?

时间:2012-04-29 13:25:55

标签: bash

因为在关闭并且没有关闭gnome终端时似乎经常没有保存历史记录,所以如果该行不是重复的话,我想在显示提示之前附加到bash历史记录。虽然我在.bashrc中有export HISTCONTROL=ignoreboth,这应该意味着忽略了对,但它似乎不起作用,因为我仍然在bash_history中得到重复。那怎么做呢?

提供进一步的指示,尽管不是解决方案: 我认为$ PROMPT_COMMAND需要有"$(history 1)" (if_not_duplicate) >> ~/.bash_history

但是需要更改$(历史1),以便输出实际命令,而不是历史记录条目,例如,有行号。

如果它们已经插入,这将删除不相邻的重复项。

perl -nei '$H{$_}++ or print' ~/.bash_history 

1 个答案:

答案 0 :(得分:1)

如果您想从历史记录中删除重复项,也需要erasedups

export HISTCONTROL=ignoreboth:erasedups

为我做了诀窍。