别名不显示在bash历史中

HISTIGNOREvariables设置为:

export HISTIGNORE="&:ls*:reboot:pwd:exit:clear:[ \t]*" 

我有几个别名设置。 其中之一是

 alias todo='emacs ~/Dropbox/Documents/todo.txt' 

他们没有一个出现在历史中。 不是我想要他们在历史上出现,但是让我感到困惑的是,他们为什么不在历史中出现。

在bash中,序列\t仅意味着$'...'内的选项卡。 这就是为什么你的模式匹配你的todo命令; 它匹配以t开头的任何内容。

你可以像这样解决它:

 tab=$'\t' export HISTIGNORE="&:ls*:reboot:pwd:exit:clear:[ $tab]*" unset tab