跟踪进程及其子进程的CPU使用情况

时间:2013-12-17 09:57:33

标签: python linux unix process cpu-usage

question包含Windows操作系统的答案。但是我正在为我的OS X(或任何* nix)机器寻找类似的东西。

我希望在一段时间内跟踪进程的CPU使用情况以及它产生的所有子进程,以便我可以绘制图形。下面给出了单个进程的CPU使用情况:

while :;do ps -p $PID -o %cpu=;sleep 0.5;done

但它并没有让我使用它的孩子。我能想到的一种方法是使用python脚本。首先,我将运行以下内容:

pgrep -P $PID

这将给出一个子进程列表。现在,我将为每个子进程生成一个子进程(使用python子进程模块),并为一个将运行第一个命令的父进程生成一个子进程。

但有没有更简单/更好的方法呢?

上面也不会给我父和它的孩子的合并CPU使用率。我真的不在乎每个孩子使用了多少。我想要的只是该进程的CPU使用百分比,而且是子进程。

1 个答案:

答案 0 :(得分:0)

这有一些有趣的答案:http://www.unix.com/unix-dummies-questions-answers/158342-command-find-parent-child-process.html

ptree对我有用,但您可能需要下载/安装它。

您可能还有ps -efps -aux ..还有top命令,只取决于您一次尝试解析的信息。