我已经history -c
在终端中使用了该命令,但它仅适用于打开的会话。如果我注销并返回命令窗口终端,历史记录仍然会被记住。我该如何阻止这种情况发生?
我想永久地手动删除终端中键入信息的历史记录,最好只是通过命令,或者进行实际的解释,而不是跳过技术演讲,因为我是一个经验不足的用户,并且很少使用脚本,并且很容易忘记。
答案1
如果您想手动删除键入的历史记录,在bash
shell 上您可以删除.bash_history
文件或编辑它以删除您想要删除的行。
要检查您使用的 shell,请输入echo $SHELL
。
答案2
如果您不想维护登录之间的历史记录,则bash
和zsh
都有一个HISTFILE
变量。
从man bash
:
HISTFILE The name of the file in which command history is saved (see HIS- TORY below). The default value is ~/.bash_history. If unset, the command history is not saved when an interactive shell exits.
来自man zshall
(即所有 zsh):
HISTFILE The file to save the history in when an interactive shell exits. If unset, the history is not saved.
因此,如果删除历史文件:
rm "${HISTFILE}"
并将命令添加到 shell 的 rc 文件中以取消设置(例如,~/.bashrc
, ~/.zshrc
):
unset HISTFILE
那么您不应该在会话之间保留任何历史记录。
请注意,这样做的优点是历史记录永远不会被写入,因此,如果您碰巧在命令中包含敏感数据,则该数据不会保留在您的历史文件中,直到您想到将其删除为止。