Linux - 如何查看进程何时启动?

Ama*_*rus 34 linux process

假设我知道 pid,如何查看进程何时启动。(在 Linux 上)

Den*_*son 42

如果您只想要开始时间,您可以通过执行以下操作来选择字段并取消标题:

 ps -p YOURPID -o lstart=
Run Code Online (Sandbox Code Playgroud)

输出将如下所示:

 Mon Dec 14 17:17:16 2009
Run Code Online (Sandbox Code Playgroud)

这是ctime(3)格式,您可以解析它以拆分相关部分。

其它起始字段,诸如startstimebsdstartstart_time年龄的时间(24小时后仅显示日期,例如)。

但是,您可以将它们直接用于最近启动的进程,而无需进一步解析:

ps -p YOURPID -o stime=
Run Code Online (Sandbox Code Playgroud)

这将输出如下内容:

09:26
Run Code Online (Sandbox Code Playgroud)


Jam*_*mes 9

awk '{print $22}' /proc/$pid/stat - 在启动后为您提供 jiffies 的开始时间

  • 它实际上以 jiffies 为单位(100/秒) (2认同)

Cho*_*er3 7

“ps -f” - 它在手册页中

  • 并选择已知的pid:`ps -f -p yourpid` (2认同)
  • 实际上,如果该过程是在同一天开始的,那么这是有效的,但如果是在另一天开始的,您只能得到这一天,但不能得到一天中的时间,如 @DennisWilliamson 的答案 (2认同)