你能阻止命令进入bash shell命令历史吗?

时间:2009-03-12 20:43:44

标签: linux bash unix shell

有没有办法阻止将命令添加到bash shell的命令历史记录中?

我希望能够阻止将某些“危险”命令添加到历史记录中,例如“rm -rf ~/some/dir”,这样按下向上箭头即可访问以前的命令命令。这样,就不可能意外地重复其中一个命令。

我问的原因是我使用向上箭头来访问shell历史记录中的先前命令,并且经常发现自己即将按 是正确的命令进入输入,只是意识到我要做一些愚蠢/烦人/危险的事情。我不喜欢在我的shell历史中浮现的rm s等想法,等着我踩到它们!

(注意:我知道可以在HISTIGNORE中设置模式,但是可以在每个命令的基础上应用的东西很好,这将成为一个好习惯。除非有一个聪明的方法来实现这是使用我错过的HISTIGNORE吗?)

2 个答案:

答案 0 :(得分:66)

在较新的Bash版本上,您只需在命令开头添加一个空格即可。 :) 如果默认情况下不起作用,请将[\ t] *添加到HISTIGNORE。 (如评论中所述.thx)

答案 1 :(得分:43)

忽略空间 添加到 HISTCONTROL 环境变量中。然后,任何以空格开头的命令行都不会输入到您的历史记录中。