top命令打印到文件以及计算CPU占用

1、top命令打印前几行日志到文件

打印前12行日志

top -b -n 1 | sed -n '1,12p'  >> 33.log 

打印某几行日志:

top -b -n 1 | sed -n '1p;12p'  >> 33.log

获取CPU占用率的行,以及占用率较高的应用

top -b -n 1 | sed -n '3p;8,11p'  >> 33.log

扫描二维码关注公众号,回复: 17526561 查看本文章

2、top计算CPU占用率

https://www.51cto.com/article/785962.html

CPU的一行:

%Cpu(s):  2.7 us,  0.7 sy,  0.0 ni, 96.2 id,  0.1 wa,  0.0 hi,  0.3 si,  0.0 st

以空格分割的话,第二个是2.7,第三个是us,第四个是0.7

一般CPU占用率就是user + system /100,所有只需要获取第二个和第四个就行

所以CPU占用率是:

top -b -n 1 | grep "Cpu(s)" | awk '{print $2 + $4}'

3、ping命令取丢包率

ping -c 5 baidu.com | tail -n 2 | grep "packets trans" | awk -F ','  '{print $3}' | awk '{print $1}' | grep -o '[0-9]\+'

猜你喜欢

转载自blog.csdn.net/yudelian/article/details/139831905