top和awk组合获得top输出的第一行时为什么总是被卡住?

来源:5-4 对日志内容做统计

mahsiaoko

2021-02-24

top -d 1| awk 'NR==1{print $0}'

这里我想每秒获得一次负载情况,为什么上面的表达式不行,总是被卡住?此处该如何解决?

写回答

2回答

翔仔

2021-02-25

同学好,请勿自己回复自己的问题,不然我这边看不到更新。。 top的话不支持实时管道,所以不能这样用。建议可以先用定时脚本,每隔一段时间执行top指令,将其打印到一个文件里,然后再通过 grep 文件并且结合 awk 来输出格式化的数据

0
2
翔仔
回复
mahsiaoko
awk是根据一屏的内容输出的(静态),top是不断产生数据的(动态)
2021-02-26
共2条回复

mahsiaoko

提问者

2021-02-24

//img.mukewang.com/szimg/60360d6c09632b2b09790119.jpg

这里只能取得第一次的负载情况,我觉得好像是NR==1这个不对。但是每次top刷新后,第一行不该都是

top - 16:26:45 up  1:40,  2 users,  load average: 0.08, 0.02, 0.01


这种吗?

0
0

剑指Java面试-Offer直通车 百度资深面试官授课

招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航

8427 学习 · 1870 问题

查看课程