在grep命令后使用时不显示awk的输出[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在grep命令后使用时不显示awk的输出[重复]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

我想在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
答案

由于我没有mac os,所以没有测试过这个命令,请你试试吧。

your_command | awk -F' +'  '/11568/{print $3}'
另一答案

我发现由于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消耗,所以我需要将打印值分配给变量然后找到平均值

以上是关于在grep命令后使用时不显示awk的输出[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Linux的文本编辑diff & sed & awk & grep

linux三大文件处理工具(grep/sed/awk)

使用awk命令循环查找并修改后输出。

grepsed和awk命令的简单使用

linux 查日志神器 - awk 相关常用命令

linux 查日志神器 - awk 相关常用命令