linux

linux history 怎么查看执行时间

小樊
303
2024-10-09 09:48:36
栏目: 智能运维

在 Linux 中,你可以使用 history 命令来查看执行过的命令。但是,history 命令本身并不会直接显示每个命令的执行时间。你可以通过结合其他命令来获取这些信息。

一种方法是使用 awkdate 命令来解析 history 命令的输出,并提取每个命令的执行时间。下面是一个示例命令:

history | awk '{print $2}' | xargs -I {} date -d "@{}" '+%Y-%m-%d %H:%M:%S'

这个命令的解释如下:

  1. history:列出所有执行过的命令。
  2. awk '{print $2}':从每行中提取第二个字段,即命令本身(假设命令和时间之间没有空格)。
  3. xargs -I {} date -d "@{}":对于每个提取出的命令,使用 date 命令以 @{} 的形式解析其执行时间。@{} 是一个占位符,它会被 xargs 替换为实际的命令。
  4. '+%Y-%m-%d %H:%M:%S':指定日期和时间的格式。

请注意,这个方法假设你的系统中的 history 命令记录的时间戳是以 Unix 时间戳(自 1970 年 1 月 1 日以来的秒数)的形式存储的。如果你的系统使用不同的时间戳格式,你可能需要相应地调整 date 命令的参数。

另外,如果你只想查看最近执行的命令及其执行时间,你可以使用 history 命令的可选参数来限制显示的命令数量。例如,history | head -n 10 会显示最近执行的 10 个命令。然后,你可以手动查看这些命令的执行时间,或者使用类似上面的方法来自动提取它们。

0
看了该问题的人还看了