top输出文件的解析

需要做监控判断,比较加压后cpu利用率,mem使用率以及swap占用率。
起初是top -n3 > /tmp/top.tmp导出top信息,然后awk,grep处理。
第一个遇到的问题是,RH6与RH7下,top输出信息有差异。free与used的位置颠倒。这样就不能使用位置参数awk $4处理。
一开始陷入思维怪圈,想着用awk遍历,匹配到"used"后,输出它的前一项。后来经人指点,可以使用“used”作为分隔符,通过两次awk输出。
中间有个插曲,北京-隔壁老赵教我使用grep -oP '(?<=total, )[0-9]+k|(?<=\+free, )[0-9]+' file进行处理,当时一直奇怪为啥没输出。后来还是老赵告诉我,top -n1输出的文件中有许多控制字符。随后采用top -bn1 > /tmp/top.tmp导出top信息,遂可行。

你可能感兴趣的:(top输出文件的解析)