如何让一句话不被历史铭记?

如何让一句话不被历史铭记?

这是针对单行,而不是命令。我找到了让它始终阻止单个命令的历史记录的方法。

谢谢。

编辑:抱歉措辞不佳。

单行 - 例如,如果我输入,,git push production我可能不想将来意外地执行这一行,因为它应该只偶尔运行,并且它会产生严重的后果。

命令 - 在此示例中,命令是git。我希望历史被铭记git push; git push staging

单一命令 - 也意味着命令。

现在清楚了吗?谢谢。

答案1

当您对比“命令”和“线路”时,不清楚您的意思。我认为该命令是您在提示符下键入的所有内容,直到 shell 解释它为止 - 通常是在您按下之前,enter除非它在引号内或转义。在 Bash 中,HISTIGNORE环境变量允许您指定模式列表;如果任何模式与命令匹配,则不会将其记录在历史记录中。

因此,如果您HISTIGNORE包含[ \t]*,任何以空格或制表符开头的命令都将被忽略。其中包括以下各项:

echo hi
echo hi; echo there
echo hi; echo there && echo fluffy
echo hi | cat

相关内容