如何查看 bash 历史记录中的时间戳?

如何查看 bash 历史记录中的时间戳?

有什么方法可以从 bash 历史记录中查看命令的执行时间?我们可以看到顺序,但是有什么方法也可以获取时间吗?

底线:Bash 历史记录中的执行时间

答案1

Ctrl++Alt打开T终端,然后运行以下命令之一:

HISTTIMEFORMAT="%d/%m/%y %T "  # for e.g. “29/02/99 23:59:59”
HISTTIMEFORMAT="%F %T "        # for e.g. “1999-02-29 23:59:59”

要使更改对当前用户永久生效,请运行:

echo 'HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bashrc  # or respectively
echo 'HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
source ~/.bashrc

测试效果如下:

history

有关详细信息,请参阅男子猛击或者Linux 的 Bash 命令行的 AZ 索引

对于运行的命令 HISTTIMEFORMAT已设置,当前的时间将保存为时间戳。HISTTIMEFORMAT设置后运行的命令将保存正确的时间戳。

答案2

打开终端Ctrl++AltT运行,

HISTTIMEFORMAT="%d/%m/%y %T "

然后,

history

要使更改永久生效,请按照以下步骤操作,

gedit ~/.bashrc

您需要将以下行添加到 .bashrc 文件,然后保存,

export HISTTIMEFORMAT="%d/%m/%y %T "

运行以下命令来获取 .bashrc 文件,

source ~/.bashrc

之后运行history命令。

在此处输入图片描述

来源http://www.cyberciti.biz/faq/unix-linux-bash-history-display-date-time/

答案3

是的,您可以:如果您设置了$HISTTIMEFORMAT.bash-history则将正确标记时间戳。这对现有内容没有帮助.bash-history,但将来会有所帮助。

答案4

我的有效版本

HISTTIMEFORMAT="%F %T %z " history | grep 'your command'

参考。https://www.linuxuprising.com/2019/07/bash-history-how-to-show-timestamp-when.html

例如

╭you@your-server:/some/path 
╰$ HISTTIMEFORMAT="%F %T %z "; history | grep 'some command'
 1947  2019-12-17 15:54:34 +0800 ./some.sh
 1948  2019-12-17 15:54:34 +0800 ./my-command

查看完整语法HISTTIMEFORMAT 这里

相关内容