设置每个命令执行的日期和时间

默认情况下,Bash命令行中执行的所有命令都会存储在历史缓冲区或记录在一个名为~/.bash_history的文件中。这意味着系统管理员可以查看系统用户执行的命令列表,或用户可以使用history命令来查看自己的命令历史记录,如下所示。

$ history
Linux History Command

从上述history命令的输出中,执行命令的日期时间没有显示。这是大多数Linux发行版的默认设置。

在本文中,我们将解释如何配置Bash历史记录中每个命令执行的时间戳信息以便显示。

每个历史记录条目关联的日期时间可以通过设置HISTTIMEFORMAT变量写入历史记录文件,并标记有历史记录注释字符。

有两种可能的方法来实现这一点:一种是临时的,另一种是永久的。

要临时设置HISTTIMEFORMAT变量,请在命令行中导出它如下:

$ export HISTTIMEFORMAT='%F %T'

在上面的导出命令中,时间戳格式为:

  1. %F – 展开为完整日期,即%Y-%m-%d(年-月-日)。
  2. %T – 展开为时间;同%H:%M:%S(小时:分钟:秒)。

date 命令手册页面阅读信息:

$ man date

然后,按照以下方式检查您的命令历史:

$ history 
Display Linux Command History with Date and Time

但是,如果您想永久配置此变量,请使用您喜欢的编辑器打开文件 ~/.bashrc:

$ vi ~/.bashrc

然后在其中添加以下行(您可以用注释标记为您自己的配置):

#my config
export HISTTIMEFORMAT='%F %T'

保存文件并退出,然后运行以下命令以应用对文件所做的更改:

$ source ~/.bashrc

就是这样!请通过评论部分与我们分享有关历史命令的任何有趣技巧或您对此指南的想法。

Source:
https://www.tecmint.com/display-linux-command-history-with-date-and-time/