如何清除 Linux 或 macOS 上的终端历史记录

在 Mac 或 Linux 命令行中按“向上”箭头,您将看到上次运行的命令。继续按“向上”,你会看到更多命令;你可以回溯几天、几个月甚至几年。
这叫做你的历史,很方便。如果您在键入长命令时出错,只需按“向上”键即可解决问题。如果你想重新连接到你前几天使用的 SSH 服务器,只需按“向上”直到你看到相关命令。
它很有用,但这里也存在潜在的安全问题,特别是如果您在某个时候不小心输入了纯文本密码。如何清除这段历史?长话短说,您可以使用两个命令执行此操作:history -c
,然后是 rm ~/.bash_history
。为了更清楚起见,下面是这些命令的作用。
清除当前会话的历史记录
您的历史可以分为两部分。有您当前会话的历史记录,还有您的长期历史记录。我们的第一个命令 history -c
处理当前会话。

history
命令内置于 Bash 本身,-c
修饰符告诉程序清除该历史记录。此命令将阻止将当前会话中的任何内容写入长期历史记录,但不会清除该长期历史记录。
清除所有 Bash 历史记录
如果要删除整个历史记录,请运行以下命令:
rm ~/.bash_history

如果您不知道,rm
是在基于 UNIX 的系统中用于删除文件的长期命令。 ~/.bash_history
是一个简单的文本文件,它存储了你的 Bash 历史。
或者,您可以打开文件并删除您关心的任何行。在 Mac 上,键入 open ~/.bash_history
,您的默认文本编辑器将打开该文件。

在 Linux 系统上,将 open
替换为您首选的文本编辑器的名称,例如 nano
、vim
或 gedit
。打开文件后,您可以删除任何不想手动保留的行。保存文件,然后重新启动您的 shell,您删除的行将停止显示。
清理您的终端以进行全新的会话
这个大部分是无关的,但我还是要提到它。命令 clear
使您的终端看起来就像您刚刚打开一个新会话,如果您截取大量屏幕截图并希望事情看起来整洁(或者不希望身后的人看到),这将很有用你一直在运行什么命令。)

这完全符合美学:向上滚动,您仍然会看到之前的输出。但如果你在我的工作范围内,它就会派上用场。