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

当我们执行各种命令时,它们将存储在名为.bash_history的文件中。我们稍后可以参考该文件以找到所有命令。有时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的内容时,它全部为空白。