查找Linux中内存和CPU使用率最高的进程
需求:创建一个定时任务,每30分钟输出该时刻(年月日分秒)系统中内存占用最大的四个进程名及进程占用内存
- 打印当前系统时间(年月日分秒)
[root@localhost /]# date "+%Y-%m-%d %H:%M:%S"
-- ::
- 打印出系统消耗内存资源最高的四个进程
[root@localhost /]# ps aux | grep -v "USER" | sort -rn -k + | head - | awk -F ' ' '{print $11,$4}'
/usr/lib/vmware-vgauth/VGAuthService 0.9
/usr/sbin/vmtoolsd 0.7
/usr/lib/vmware-caf/pme/bin/ManagementAgentHost 0.5
sshd: 0.4
- 脚本如下:
#!/bin/bash date=`date "+%Y-%m-%d %H:%M:%S"`
#打印消耗资源内存最高的进程名
first=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k + | head - | awk -F ' ' '{print $11}' | sed -n 1p`
Second=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k + | head - | awk -F ' ' '{print $11}' | sed -n 2p`
Third=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k + | head - | awk -F ' ' '{print $11}' | sed -n 3p`
Fourth=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k + | head - | awk -F ' ' '{print $11}' | sed -n 4p`
#打印消耗内存资源最高进程、内存使用率
one=`ps aux | grep -v "grep" | grep -v "USER" | grep "$first" | awk -F ' ' '{print $4}'`
two=`ps aux | grep -v "grep" | grep -v "USER" | grep "$Second" | awk -F ' ' '{print $4}'`
three=`ps aux | grep -v "grep" | grep -v "USER" | grep "$Third" | awk -F ' ' '{print $4}'`
four=`ps aux | grep -v "grep" | grep -v "USER" | grep "$Fourth" | awk -F ' ' '{print $4}'` #使用echo打印结果
echo "$date $first $one"
echo "$date $Second $two"
echo "$date $Third $three"
echo "$date $Fourth $four"
- 每30分钟执行一次脚本
[root@localhost /]# crontab -e
crontab: installing new crontab
[root@localhost /]# crontab -l
*/ * * * * /bin/bash /mem.sh >>/mem.log
- 执行mem.sh脚本输入结果如下:
[root@localhost /]# ./mem.sh
-- :: /usr/lib/vmware-vgauth/VGAuthService 0.9
-- :: /usr/sbin/vmtoolsd 0.7
-- :: /usr/lib/vmware-caf/pme/bin/ManagementAgentHost 0.5
-- :: sshd: 0.4
查找Linux中内存和CPU使用率最高的进程的更多相关文章
- Linux中内存、CPU使用情况查看
1.背景 在实际生产中我们为了保证系统能稳定运行,我们经常要查看当前的CPU和系统使用情况 建议使用top,简单丰富,快捷 2.使用free查看内存使用情况 3.使用 top查看内存.cpu内存占比 ...
- 如何在 Linux 中找出 CPU 占用高的进程
1) 怎样使用 top 命令找出 Linux 中 CPU 占用高的进程 在所有监控 Linux 系统性能的工具中,Linux 的 top 命令是最好的也是最知名的一个.top 命令提供了 Linux ...
- 在 Linux 中找出 CPU 占用高的进程
列出系统中 CPU 占用高的进程列表来确定.我认为只有两种方法能实现:使用 top 命令 和 ps 命令.出于一些理由,我更倾向于用 top 命令而不是 ps 命令.但是两个工具都能达到你要的目的,所 ...
- linux服务器内存、根目录使用率、某进程的监控告警脚本
脚本内容如下 #!/bin/bash #磁盘超过百分之80发送邮件告警 DISK_USED=`df -T |sed -n "2p" |awk '{print ($4/$3)*100 ...
- zabbix自动发现与监控内存和CPU使用率最高的进程,监测路由器
https://cloud.tencent.com/info/488cfc410f29d110c03bcf0faaac55b2.html (未测试) https://www.cnblo ...
- 在Linux中通过Top运行进程查找最高内存和CPU使用率
按内存使用情况查找前15个进程,在批处理模式下为"top" 使用top命令查看有关当前状态,系统使用情况的更详细信息:正常运行时间,负载平均值和进程总数. 分类:Linux命令操作 ...
- Linux课程---12、linux中内存指令(top命令的作用是什么)
Linux课程---12.linux中内存指令(top命令的作用是什么) 一.总结 一句话总结: top实时观察进程.内存和CPU情况 1.电脑出现反应慢情况,最先想到的是什么? 内存 2.linux ...
- 深入理解Linux中内存管理
前一段时间看了<深入理解Linux内核>对其中的内存管理部分花了不少时间,但是还是有很多问题不是很清楚,最近又花了一些时间复习了一下,在这里记录下自己的理解和对Linux中内存管理的一些看 ...
- linux中内存使用,swap,cache,buffer的含义总结
首先介绍一下linux中内存是如何使用的.当有应用需要读写磁盘数据时,由系统把相关数据从磁盘读取到内存,如果物理内存不够,则把内存中的部分数据导入到磁盘,从而把磁盘的部分空间当作虚拟内存来使用,也称为 ...
随机推荐
- 前端之ajax
前端之ajax 本节内容 ajax介绍 原生js实现ajax jquery实现ajax json 跨域请求 1. ajax介绍 AJAX(Asynchronous Javascript And XML ...
- hibernate关联映射
首先,建立user表,news表 建立User,News类 package com.example.hibernate; import java.util.Set; public class User ...
- [原]CentOS7部署osm2pgsql
转载请注明原作者(think8848)和出处(http://think8848.cnblogs.com) 部署Postgresql和部署PostGis请参考前两篇文章 本文主要参考GitHub上osm ...
- [LeetCode] Find Minimum in Rotated Sorted Array 寻找旋转有序数组的最小值
Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...
- 常见web攻击以及防御
xss攻击: 跨站脚本攻击,攻击者在网页中嵌入恶意代码,当用户打开网页,脚本程序便开始在客户端的浏览器上执行,以盗取客户端cookie,用户名密码,下载执行病毒木马程序,甚至是获取客户端admin权限 ...
- HttpURLConnection类
导语 java.net.HttpURLConnectin类是URLConnection类的抽象子类.它在处理协议为HTTP的URL时特别有效.具体而言,它通过它可以获取和设置请求方法,确定是否重定向, ...
- CentOS安装Redis
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make ...
- 修改hosts文件在本地使域名解析到指定IP
# Additionally, comments (such as these) may be inserted on individual # lines or following the mac ...
- Mac合并分区
Mac合并分区 公司Mac电脑之前是win系统,重新安装了mac系统后,多了一个分区.用分区助手打开后,减号是灰色的,上网搜了很多帖子,都是点击减号直接将分区删除等等.减号不能点击的就要重新装系统了. ...
- C#-WebForm-★★★ 分页展示 ★★★
什么是"分页展示"? 分页展示就是将庞大的数据分成若干页,每页展示若干条数据,向用户展示数据 流程:客户端浏览器向服务器发送查询请求 → 服务器从数据库查询数据 → 服务器转换成代 ...