📜  为 Bash History 中的每个命令设置日期和时间

📅  最后修改于: 2022-05-13 01:57:27.285000             🧑  作者: Mango

为 Bash History 中的每个命令设置日期和时间

先决条件:Linux 中的历史命令和示例

在 bash 中,用户执行的所有命令的历史记录都存储在/home/user/.bash_history 中。该文件默认存储在 1000 个命令中,但我们可以增加或减少它。 通过使用历史命令,系统管理员可以查看各个用户执行的命令。然后 history 命令显示输出,其中包含命令编号和顺序执行的命令。这是历史命令的示例

history

此命令提供当前登录用户的完整历史记录。

为您在 Bash 历史记录中执行的每个命令设置日期和时间

但是在输出中,我们可以看到我们可以看到带有命令编号的历史记录。但是我们必须获得输出,以便 history 命令显示带有执行命令的日期和时间的输出。我们可以通过设置HISTTIMEFORMAT变量来实现。我们可以通过临时和永久两种方式来做到这一点。



带有日期和时间的临时历史命令:

要临时设置 HISTTIMEFORMAT 变量,我们必须导出它。使用以下命令导出 HISTTIMEFORMAT 变量。

export HISTTIMEFORMAT='%F %T'

在上面的命令中, %F以 %Y-%m-%d(年 - 月 - 日期)格式显示完整日期,%T以 %H:%M:%S(小时:分钟:秒)格式显示完整时间) 格式。要了解有关 date 命令的更多信息,请使用 man 命令,例如

man date 

Linux 中的历史命令示例

然后对于当前终端会话,我们可以看到带有日期和时间的 history 命令的输出,例如:

为您在 Bash 历史记录中执行的每个命令设置日期和时间

带有日期和时间的永久历史命令:

要永久设置 HISTTIMEFORMAT 变量,我们必须将它导出到 ~/.bashrc 文件中。为此,请在您喜欢的编辑器中打开 ~/.bashrc 文件。

vim ~/.bashrc

现在将以下行添加到 ~/.bashrc 文件中

export HISTTIMEFORMAT='%F %T'

为您在 Bash 历史记录中执行的每个命令设置日期和时间

保存并退出文件以查看更改后,您可以退出当前终端会话并打开另一个终端或运行以下命令:

source ~/.bashrc

这将在 bash shell 中显示带有日期和时间的历史命令的永久输出。