如何在Linux中的Bash历史记录中启用时间戳

您可以使用以下命令轻松找到Linux中最近执行的命令列表 history 命令,对不对? 是。 但是您怎么知道命令的执行时间呢? 当然,您可以搜索日志文件。 但是,有一种更简单的方法。 您只需在Linux中的Bash历史记录中启用时间戳记,因此更容易查找何时在Linux中执行了特定命令。

在Linux中的Bash历史记录中启用时间戳

重击 维护在终端中输入的命令的历史记录。 此命令列表保存在一个名为 .bash_history 在我们的HOME目录中。 大多数Linux发行版都记得最后 1000 命令默认。 我们可以使用以下命令检索最近执行的命令 history 命令灰如下所示:

$ history

样本输出:

无时间戳的history命令输出

从上面的输出中可以看到,即使history命令显示了先前执行的命令列表,也没有显示这些命令何时执行。

要在Linux中的Bash历史记录中启用时间戳,您需要设置 历史记录格式 环境变量。 此变量用于打印与每个显示的历史记录条目关联的时间戳。

运行以下命令来设置 历史记录格式 环境变量:

$ export HISTTIMEFORMAT='%F %T '

现在,运行 history 再次命令,您将在每个命令之前看到时间戳:

在Bash历史记录中启用时间戳

完善! 现在,您可以轻松地查找在Linux系统中何时执行特定命令。

例如,如果要显示最后“ N”个命令的时间戳 10,将 history 命令输出到 tail 如下命令:

$ history | tail -10

为了使 历史记录格式 env变量在系统重新引导后持续存在,请编辑 ~/.bashrc 文件:

$ nano ~/.bashrc

在末尾添加以下行:

export HISTTIMEFORMAT='%F %T '

CTRL+O 保存文件,然后按 CTRL+X 退出。

运行以下命令以立即使更改生效:

$ source ~/.bashrc

这只会显示当前用户的时间戳。 要为所有系统用户启用Bash历史记录时间戳,请编辑 /etc/profile 文件:

$ sudo nano /etc/profile

并添加以下行:

export HISTTIMEFORMAT='%F %T '

保存并关闭文件。 要使更改生效,请运行:

$ sudo source /etc/profile

有关更多详细信息,请参见手册页:

$ man history

希望这可以帮助。

相关阅读:

  • 如何在Linux中清除命令行历史记录
  • 如何显示没有行号的Bash历史记录
  • 如何避免Linux中Bash历史记录中的重复条目
  • 在Linux中查找命令或进程的执行时间

BASHBash历史记录Bash技巧历史命令Linux Linux基础Linux技巧时间戳

Sidebar