别名没有出现在bash历史中

nik*_*nik 4 linux bash history alias

HISTIGNORE变量设置为:

export HISTIGNORE="&:ls*:reboot:pwd:exit:clear:[ \t]*"
Run Code Online (Sandbox Code Playgroud)

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

alias todo='emacs ~/Dropbox/Documents/todo.txt'
Run Code Online (Sandbox Code Playgroud)

它们都没有出现在历史中.并不是说我希望它们出现在历史中,但令我困惑的是,为什么他们没有出现在历史中.

rob*_*off 6

在bash中,序列\t仅表示内部的选项卡$'...'.这就是你的模式符合你的todo命令的原因; 它匹配任何开头的东西t.

你可以像这样解决它:

tab=$'\t'
export HISTIGNORE="&:ls*:reboot:pwd:exit:clear:[ $tab]*"
unset tab
Run Code Online (Sandbox Code Playgroud)