我想知道Linux中一个进程及其所有子进程的CPU和内存使用情况。
最好使用 ps 命令解决方案。但也欢迎其他解决方案。
请帮忙
谢谢 舒贾
这里有一个简单的脚本可以完成您想要的操作。您的选项将根据您使用的
ps
版本而有所不同。结果以逗号分隔,因此您可以将其作为 CSV 传递到电子表格中。
ps -vl | awk '{print $1 ", " $11 ", " $12 ", " $15}' | sed -n '/^424/ p'
您可以将
424
更改为您想要的任何父 PID。当然,如果有其他东西与你的PID数字相同,你就得小心了。
$ ps -vl
PID STAT TIME SL RE PAGEIN VSZ RSS LIM TSIZ %CPU %MEM COMMAND UID PPID F CPU PRI NI WCHAN ADDR TTY
432 S+ 0:00.01 0 0 0 2499948 1696 - 0 0.0 0.0 -bash 501 431 4006 0 31 0 - 0 ttys001
618 S 0:00.06 0 0 0 2465132 1656 - 0 0.0 0.0 -bash 501 617 4006 0 31 0 - 0 ttys002
424 S+ 0:00.01 0 0 0 2482540 1620 - 0 0.0 0.0 -bash 501 423 4006 0 31 0 - 0 ttys000
629 S+ 0:00.02 0 0 0 2463084 1612 - 0 0.0 0.0 -bash 501 628 4006 0 31 0 - 0 ttys003
$ ps -vl | awk '{print $1 ", " $11 ", " $12 ", " $15}' | sed -n '/^424/ p'
424, 0.0, 0.0, 423