我希望在Mac OS中使用pid
命令中的top
获取进程的CPU%。当我使用top | awk '{print $3}'
时,我获得了所有进程的CPU%。但是,使用top | grep 11568 | awk '{print $3}'
不返回任何内容。 top | grep 11568
的输出是
11568 java 0.0 09:48.45 663 2 1533+ 521M+ 0B 741M+ 11560 11560 sleeping *0[64+] 0.00000 0.00000 501 1335625+ 803+ 12376+ 4146+ 37032037+ 28783+ 3748122+ 514+ 112576 0.0 0 0 amar N/A N/A N/A N/A N/A N/A
答案 0 :(得分:1)
由于我没有mac os,Haven没有测试过这个命令,请你试试吧。
your_command | awk -F' +' '/11568/{print $3}'
答案 1 :(得分:0)
我发现由于top
的输出是连续的,因此使用-l 1
有助于awk解析数据,因为数据不断变化,awk的输出为空。因此,使用top -l 1 | grep 19275 | awk '{ print $3}'
可以得到正确的输出。另外top | awk -F' +' '/11568/{print $3}'
给出正确的输出,但是在shell文件中使用top | awk -F' +' '/11568/{print $3}'
不起作用,我想找到平均CPU消耗,所以我需要将打印值分配给变量然后找到平均值