帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何在Linux服务器中不保存历史记录的情况下运行命令

如何在Linux服务器中不保存历史记录的情况下运行命令

发布时间:2022年05月17日 08:11:05    来源: A5互联

默认情况下,您在Linux系统的香港服务器上执行的每个命令都由 shell(命令解释器)存储在称为历史文件或 shell 命令历史的某个文件中。在Bash(Linux 系统上最流行的 shell )中,默认情况下,历史中持久化的命令数为1000,而某些Linux 发行版有500。

要检查 Bash 中的历史记录大小,请运行以下命令:

$ echo $HISTSIZE

要查看已运行的旧命令,可以使用history 命令显示 shell 命令历史记录:

$ history

有时,您可能希望禁止 shell 将命令记录到其命令历史记录中。您可以按如下方式进行。

运行后从历史记录中删除 Linux 命令

在命令行上运行命令后,您可以立即从 shell 历史记录中删除命令,方法是将命令附加到该history -d $(history 1)命令。

该$(history 1)子命令检索当前终端会话中历史记录中的最新条目,其中1是偏移量,该-d选项有助于删除它。

通常运行的任何命令都会保存在 shell 历史记录中。

但是,当您将命令附加history -d $(history 1)到命令行时,它会立即从 shell 历史记录中删除,如以下屏幕截图所示:

另一种防止 shell 将命令保存在历史记录中的方法是在命令前面加上一个空格。但这完全取决于~/.bashrc Bash 启动文件$HISTCONTROL中定义的 shell 变量的值。它应该设置为具有以下值之一:ignorespace或ignoreboth,以使此方法起作用。

您可以检查$HISTCONTROL变量的值,如图所示。

如果设置了上述 shell 变量,则任何以空格为前缀的命令都不会保存在历史记录中: