Did I Leak the Password in the Command Line?
💡
原文约400字/词,阅读约需2分钟。
📝
内容提要
作者在生产服务器上误输入了包含密码的命令,导致密码暴露在终端历史记录中。他建议用`history -d`删除特定行,`history -w`更新历史,或`history -c`清除所有历史。还可以在`.bashrc`中设置`HISTIGNORE`,忽略特定命令。
🎯
关键要点
- 作者在生产服务器上误输入了包含密码的命令,导致密码暴露在终端历史记录中。
- 可以使用`history -d`删除特定行,`history -w`更新历史,或`history -c`清除所有历史。
- 可以使用for循环删除一系列历史命令。
- 在`.bashrc`中设置`HISTIGNORE`,可以忽略特定命令不记录在历史中。
- HISTIGNORE的值是正则表达式,可以添加多个规则,用冒号分隔。
❓
延伸问答
如何删除终端历史中的特定命令?
可以使用命令 `history -d 行号` 删除特定行的历史记录。
如果我想清除所有终端历史,该怎么做?
可以使用命令 `history -c` 来清除所有终端历史记录。
如何确保某些命令不被记录在终端历史中?
可以在 `.bashrc` 文件中设置 `HISTIGNORE`,添加需要忽略的命令模式。
如何使用循环删除一系列历史命令?
可以使用 `for` 循环结合 `history -d` 命令来删除一系列历史行。
HISTIGNORE 的值是什么?
HISTIGNORE 的值是正则表达式,可以添加多个规则,用冒号分隔。
如果我不小心暴露了密码,应该怎么处理?
可以使用 `history -d` 删除包含密码的命令行,并更新历史记录。
🏷️
标签
➡️