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]\+'