top在linux中是一个非常直观的命令,可以清晰地看到各进程对资源的使用情况。

 

但是如果你想从top命令展示中提取某些数据出来,如果想当然地使用这句命令:

top|grep xxx

就会被卡住,欲哭无泪。

 

我们不妨查一下top这个命令,看看是否有其他办法来把数据抓出来。

 

首先简单了解一下top这个命令。

 

top是linux的一个性能分析工具,类似于windows的任务管理器。其最大特点有两个:动态、直观地显示进程占用资源情况。

执行top的时候,会在前台默认打开一个terminal,可使用q来退出。

例如:

 

上面的图中,有很多有用的信息:

1. 可以看到uptime、1min 5min 15min的负载
2. 可以看到总任务数、在跑任务数、停止任务数、僵尸任务数
3. 可以看到user数
4. 可以看到总的cpu负载情况
5. 可以看到总的内存和swap使用情况,以kb为单位
6. 各个进程使用系统资源的情况

 

上面的各列分别指:

PID: 进程号
USER: 启动进程的用户
PR: 优先级
NI: 谦让级
VIRT: 虚拟内存占用
RES: 进程使用的、未被换出的物理内存大小
SHR: 共享内存大小,单位kb
S: 进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
%CPU: 上次更新到现在的CPU时间占用百分比
%Mem: 物理内存占用百分比
TIME+: 进程启动时间
COMMAND: 命令名

 

而这个命令也有一些参数,具体可以看下边:

-b: 批处理
-c: 显示完整的命令
-l:忽略失效进程
-s: 保密模式
-n 数字: 显示次数,后加
-u 用户名: 显示某用户下的进程情况
-p 进程号: 指定进程

 

top还有一些交互命令,在前置页面使用,十分方便:

h: 显示帮助菜单
k: 杀死一个进程
i: 忽略僵尸进程
P: 按照CPU占用进行排序
M: 按照内存占用进行排序
T: 根据时间/累计时间进行排序
W: 将结果保存到~/.toprc文件

 

好了,介绍了一圈之后,到了本文的重点了。如果我要抓出mysql进程,查看其性能情况并取数,可使用以下两种方法:

top -u mysql -n 1|grep mysqld|awk '{print $9}'   #取CPU占用数据
top -u mysql -n 1|grep mysqld|awk '{print $10}' #取内存占用数据

或者:

top -b -n 1|grep mysql|awk '{print $9}'    #取CPU占用数据
top -b -n 1|grep mysql|awk '{print $10}' #取内存占用数据

而抓取数据只是前置步骤,后续可以使用此数据进行各种后续操作。

linux抓取top命令中数据的方法的更多相关文章

  1. Linux 抓取网站命令

    wget -m -e robots=off -U "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.6) Gecko/200 ...

  2. Linux top命令中CPU信息的详解(转)

    add by zhj: 下面的文章解释的很好了,这里再说明一下top命令中wa的含义,我们知道,当IO阻塞时,操作系统会把进程改为阻塞态,将CPU调度到运行其它进程. CPU在空闲状态下,会检查是否有 ...

  3. linux top命令中各cpu占用率含义

    linux top命令中各cpu占用率含义 [尊重原创文章摘自:http://www.iteye.com/topic/1137848]0.3% us 用户空间占用CPU百分比 1.0% sy 内核空间 ...

  4. (转)linux top命令中各cpu占用率含义及案例分析

    原文:https://blog.csdn.net/ydyang1126/article/details/72820349 linux top命令中各cpu占用率含义 0 性能监控介绍 1 确定应用类型 ...

  5. 性能测试 | Linux系统top命令中的io使用率,很多人都误解了它的具体含义

    body{ text-align:left; width:80%; margin:10px 100px; } 最近在做连续数据流的缓冲系统,C语言代码实现后,粗略测试了下,功能上应该没有问题.那么,接 ...

  6. Linux ps与top命令

    Linux ps与top命令 这两个命令都是查看系统进程信息的命令,但是用处有点儿不同 1.ps命令--提供系统过去信息的一次性快照 也就是说ps命令能够查看刚刚系统的进程信息  命令:ps aux或 ...

  7. Python 3.6 抓取微博m站数据

    Python 3.6 抓取微博m站数据 2019.05.01 更新内容 containerid 可以通过 "107603" + user_id 组装得到,无需请求个人信息获取: 优 ...

  8. python爬虫成长之路(一):抓取证券之星的股票数据

    获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...

  9. 使用 Python 抓取欧洲足球联赛数据

    Web Scraping在大数据时代,一切都要用数据来说话,大数据处理的过程一般需要经过以下的几个步骤    数据的采集和获取    数据的清洗,抽取,变形和装载    数据的分析,探索和预测    ...

随机推荐

  1. CF1163E Magical Permutation【线性基,构造】

    题目描述:输入一个大小为\(n\)的正整数集合\(S\),求最大的\(x\),使得能构造一个\(0\)到\(2^x-1\)的排列\(p\),满足\(p_i\oplus p_{i+1}\in S\) 数 ...

  2. 小程序中嵌套的h5页面设置分享转发

    场景描述:当在小程序中打开h5页面时,希望小程序的转发出去的标题,图片,跳转link可以通过h5通信实现自定义. 实现方式:通过h5给小程序通信,发送标题,图片,跳转link等信息,让小程序设置分享. ...

  3. Nginx:fastcgi_param详解

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;#脚本文件请求的路径 fastcgi_param QUERY_STRI ...

  4. book-rev8 Chapter 0 Operating system interfaces

    Chapter 0 第0章 Operating system interfaces 操作系统接口 The job of an operating system is to share a comput ...

  5. ubuntu之路——day10.6 如何理解人类表现和超过人类表现

    从某种角度来说,已知的人类最佳表现其实可以被当做贝叶斯最优错误,对于医学图像分类可以参见下图中的例子. 那么如何理解超过人类表现,在哪些领域机器已经做到了超越人类呢?

  6. 【软工实践】团队项目Snug-需求分析报告

    组长博客链接 博客链接 团队项目整体计划安排 阶段序列 阶段时间 主要阶段任务 完成情况 第一阶段 9.6 团队成立 已完成 第二阶段 9.6-9.13 课题选择 已完成 第三阶段 9.13-9.18 ...

  7. * resolve_conffiles: Existing conffile /etc/config/dhcp is different from the conffile in the new package. The new conffile will be placed at /etc/config/dhcp-opkg.

    * resolve_conffiles: Existing conffile /etc/config/dhcp is different from the conffile in the new pa ...

  8. heatmap.js 参数说明

      blur:每个点都是两个圆组成的,分别为内圆和外圆:外圆越大,看起来这个点越模糊,内圆部分比较清晰:外圆的颜色比较固定且与内圆颜色不同,内圆的颜色由value确定:blur决定外圆与内圆的占比大小 ...

  9. 在Windows下编译Cef3.2623并加入mp3、mp4支持(附带源码包和最终DLL)《转》

    https://blog.csdn.net/zhuhongshu/article/details/54193842 源码包下载地址:点我下载 最终Dll.Lib.PDB.头文件下载地址(release ...

  10. Centos7修改为固定IP后 yum 出现could not retrieve mirrorlist

    Centos7修改为固定IP后 yum 出现could not retrieve mirrorlist,发现yum源的域名无法解析 按照6,修改/etc/resovle.conf,新增域名解析服务器1 ...