Linux – 如何看到一个进程何时开始?

假如我知道PID,我怎样才能看到一个进程开始。 (在Linux上)

如果您只想要开始时间,您可以select该字段并通​​过执行以下操作来抑制标题:

ps -p YOURPID -o lstart= 

输出将如下所示:

  Mon Dec 14 17:17:16 2009 

这是ctime(3)格式,你可以parsing它来拆分相关的部分。

其他开始字段,例如startstimebsdstartstart_time使时间变长(例如24小时后只显示date)。

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

 ps -p YOURPID -o stime= 

这会输出如下所示的内容:

 09:26 

“ps -f” – 它在man页面中

awk '{print $22}' /proc/$pid/stat – 在启动后给你jiffies的启动时间

有一种方法可以ps -f | grep,正如你所说的那样,其他的明智你也可以明智的

或者,在每个主机上只有一个进程的情况下,您可以执行以下操作:

 ps -p `pgrep openvpn` -o lstart=