我怎样才能找到产生大量子进程的前5个进程

时间:2011-08-04 14:45:48

标签: linux

如何找到产生大量子进程的前5个进程。

2 个答案:

答案 0 :(得分:2)

只有直接的孩子:

pids=`ps hx | awk '{print $1}' | grep -v '^1$'`
(for p in $pids; do echo -n $p ""; ps h --ppid $p | wc -l; done) | sort -k 2 -r | head -n 5

如果您正在寻找孩子的孩子:

pids=`ps hx | awk '{print $1}' | grep -v '^1$'`
(for p in $pids; do echo -n $p ""; pstree $p 2>/dev/null | wc -l; done) | sort -n -k 2 -r | head -n 5

示例(第一个数字是PID,第二个数字是子数+ 1(父)):

2 121
2624 12
2933 4
30514 3
2634 3

答案 1 :(得分:0)

幸运的是,在ps中查找前5个父pid就足够了。