Linux ps命令 – 获取进程运行时间 – etime和time参数不同

如何确定一个进程的运行时间?

谷歌关于ps命令之后,我可以使用ps命令获取进程运行时间:

ps -eo pid,id,cmd,etime,time 

我在google看到的大多数文章都使用etime(经过时间)来确定stream程运行时间。

但我也发现了一个类似的问题,在stackoverflow.com 获取Linux中的用户进程的执行时间,他/她使用时间参数?

所以我的问题是,ps命令中的etime和time参数有什么区别,哪个参数能够得到实际的进程运行时间。

时间测量“挂钟时间”,现在和过程开始的时刻之间的区别。

timecputime别名)衡量CPU忙于执行进程代码的时间。 当进程正在等待网络或磁盘或只是睡觉,这个计数器不会增加。 当进程使用多个线程并行执行某些代码时,该计数器会与正在讨论的进程占用的CPU数成比例地增加。 time通常远小于etime ,除非这个过程做了大量的计算。

 $ man ps etime ELAPSED elapsed time since the process was started, in the form [[DD-]hh:]mm:ss. time TIME cumulative CPU time, "[DD-]HH:MM:SS" format. (alias cputime). 

使用linux命令时间。 它记录了三种进程运行时间。 真实的:墙上的时间。 用户:用户空间时间。 sys:内核空间时间。

找到这个链接: Linux时间命令输出中real,user和sys的含义