如何在Linux服务器中不保存历史记录的情况下运行命令
默认情况下,您在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 变量,则任何以空格为前缀的命令都不会保存在历史记录中: