删除Linux中的终端历史记录

Fra*_*lea 169 linux bash terminal

在Linux终端中使用up键时,可以再次使用以前的命令.很棒的功能.但是,我开始使用命令中的敏感细节将mysql记录到mysql中.

如何删除该历史记录?

Edd*_*die 343

你可以像这样清除你的bash历史记录:

history -cw

  • 真的很喜欢这个答案 - 这会立即生效,而不是删除`.bash_history`,它需要重启shell才能生效. (4认同)

sag*_*agi 24

如果使用bash,则终端历史记录将保存在名为.bash_history的文件中.删除它,历史将消失.

但是,对于MySQL,更好的方法是不在命令行中输入密码.如果只指定-p选项而没有值,则会提示您输入密码,并且不会记录密码.

如果您不想每次都输入密码,另一个选择是将其存储在my.cnf文件中.创建一个名为〜/ .my.cnf的文件,例如:

[client]
user = <username>
password = <password>
Run Code Online (Sandbox Code Playgroud)

确保更改文件权限,以便只有您可以读取该文件.

当然,这样您的密码仍然保存在主目录中的纯文本文件中,就像之前保存在.bash_history中一样.

  • 不要忘记"取消设置HISTFILE",以便不保存当前历史记录. (5认同)
  • 用于指定`-p`的+1.这完全是解决此问题的正确方法 (3认同)
  • 实际上,在我的Linux系统上,bash会记住历史记录并在注销时重新创建文件.您必须登录,删除文件,再次登录,注销第一个shell,删除文件,然后注销第二个shell. (2认同)