巧用linux-top的批处理模式

IT技术学习:一种是采用按部就班的系统式学习;一种是采用“投机取巧”的碎片式学习。我这我的比较赖,也没有那些大牛执着的精神和水平,因此只能和你们分享后者linux

命令简述

top命令-是UNIN&&LINUX系统自带的系统管理工具。能够实时显示系统性能(负载、进程、运行时间)等多个指标。流行的网络教程是以交互式(实时)方式进行教学 ,实际上top还自带的强大的batch mode,来帮助你事半功倍。一般在交互式(实时)模式,只须要在shell下直接运行top便可,以下
巧用linux-top的批处理模式shell

交互式实模式与批处理模式

实时模式好处是能够实时的观察系统状态,可是缺点也是明显网络

  1. 在不考虑使用第三方监控工具的状况下,如何记录(查看)历史数据?如何排除干扰只关注某项值?
    好比我须要知道在某段时刻,系统运行了多少个tasks,实时可见,但历史数据已流逝。
  2. 数据的排版再处理,也就是数据的二次加工。既然要加工,首先数据有持久化的存储。存储的数据转为输入--而后才能用你须要的逻辑调用处理,处理完成后再次输出。

这些能够经过批处理模式来处理。ide

top-批处理模式在-SHELL下经过选项b来控制工具

  • -b : runs top in batch mode

批处理模式范例

一、导出一次的TOP输出

top -b -n 1 > top.txt
cat top.txt

你会惊奇的发现top的内容竟然能够输出到file
巧用linux-top的批处理模式性能

二、-n参数连续获取快照

top -b -n 5 > top-5iterations.txt
cat top-5iterations.txt | grep Tasks

获取5次快照,而后过滤出tasks任务
巧用linux-top的批处理模式学习

三、crond(计划任务进程)进程的输出

$ pidof crond #获取pid
$ top -p 536 -b -n3 > cron.txt #输出
$ cat cron.txt

巧用linux-top的批处理模式

四、每2秒,共8次获取进程使用状况

for i in {1..8}; do sleep 2 && top -b -p 536 -n1 | tail -1 ; done >> cron.txt
cat cronta.txt

在实际效果中,为了让你们了解每列的含义,我显示了每列的头部字段名,以下
巧用linux-top的批处理模式测试

五、当前系统进程CPU使用状况排序

top -b -o +%CPU | head -n 22 #排列最占用CPU的进程

巧用linux-top的批处理模式

本文只是抛砖引玉,具体使用,请你们积极开动脑筋
以上测试系统CENTOS7.2 其它LINUX发型版,请自行测试code

相关文章
相关标签/搜索