如何在 Linux 中清除 BASH 命令行历史记录?

linuxopen sourceoperating system

我们执行各种命令时,它们会被存储在一个名为 .bash_history 的文件中。我们稍后可以参考此文件来查找所有命令。有时,bash 命令中可能包含敏感信息。要删除敏感信息,我们可以从 BASH 历史记录文件中删除特定行,也可以删除整个文件。在本文中,我们将介绍这两种方法。

这里我们可以看到 .bash_history 文件。

$ ls -l .bash_history
$ cat .bash_

运行上述代码得到以下结果 -

-rw------- 1 ubuntu ubuntu 6495 Dec 31 19:30 .bash_history

清除单个命令

要从历史记录中清除特定命令,我们首先要找到行号在 bash 历史文件中保存该命令,然后使用 –d 选项将其删除。

cat -n .bash_history

运行上述代码得到以下结果 −

u@ubuntu:~$ cat -n .bash_history
1perl -v
2sudo -apt update
3sudo apt -update
4cal
5today
6now
7now() ;
..
..

假设我们想要删除第 4 行的 cal 命令。

$ history

运行上述代码得到以下结果 −

1 perl -v
2 sudo -apt update
3 sudo apt -update
4 today
5 now
6 now() ;
……
……

清除全部历史记录

我们可以使用以下命令清除全部历史记录。这里,我们用 null 覆盖 .bash_history 文件。

$cat /dev/null > ~/.bash_history
$ cat .bash_history
$

如您所见,当我们查找 .bash_history 的内容时,它全是空白。


相关文章


有用资源