获取有关PID的信息

时间:2014-09-26 07:21:34

标签: c macos terminal

我试图通过cterminal获取有关PID的信息(理想情况下,我希望通过两种方式获取,多种方法)

我有一个PID,想知道它声称的时间。声称我的意思是当一个程序开始使用它。或者,如果重用PID,当使用它的最新程序开始使用它时。

在Linux中,我所做的是lstat "/proc/PID_HERE/exe"lstat "/proc/PID_HERE/cmdline",但我无法弄清楚如何在Mac OS上执行此操作。

注意:我从stat更改为lstat,因为单个exe与命令行参数一起使用以打开多个实例。所以每个实例都有一个新的pid,所以我想要关于那个特定实例的信息,因此在Linux上我必须使用lstat。那么任何lstat相当于在mac os上获取pid信息吗?

1 个答案:

答案 0 :(得分:1)

我认为你的意思是:

ps -p <PID> -o start=
10:22am

在PID中替换。 start=选择开始时间并抑制标题行。如果您想要标题,请使用

ps -p <PID> -o start
STARTED
10:22am

或者,你可以像这样更充分地形成开始时间:

ps -p <PID> -o lstart=
Fri 26 Sep 10:22:50 2014

顺便说一句,如果您想要一个关键字列表(例如上面的startlstart),您可以浏览管理,或者更简单地说,只需提供一个无效的关键字,它就会告诉你它喜欢的所有: - )

ps -o %rubbish
ps: %rubbish: keyword not found
ps: no valid keywords; valid keywords:
%cpu %mem acflag acflg args blocked caught comm command cpu cputime etime f flags gid group ignored
inblk inblock jobc ktrace ktracep lim login logname lstart majflt minflt msgrcv msgsnd ni nice nivcsw
nsignals nsigs nswap nvcsw nwchan oublk oublock p_ru paddr pagein pcpu pending pgid pid pmem ppid pri
pstime putime re rgid rgroup rss ruid ruser sess sig sigmask sl start stat state stime svgid svuid
tdev time tpgid tsess tsiz tt tty ucomm uid upr user usrpri utime vsize vsz wchan wq wqb wql wqr xstat