千家信息网

Linux中显示内存和CPU使用率最高的进程是怎么样的及SHELL脚本怎么编写

发表于:2024-10-21 作者:千家信息网编辑
千家信息网最后更新 2024年10月21日,本篇文章为大家展示了Linux中显示内存和CPU使用率最高的进程是怎么样的及SHELL脚本怎么编写,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。显示CPU占用
千家信息网最后更新 2024年10月21日Linux中显示内存和CPU使用率最高的进程是怎么样的及SHELL脚本怎么编写

本篇文章为大家展示了Linux中显示内存和CPU使用率最高的进程是怎么样的及SHELL脚本怎么编写,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

显示CPU占用率最高的十个进程信息

# ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 30222 5.0 3.8 10685936 38228 ? Sl Apr24 1453:59 ./pd-server -data-dir=/data/tidb/pd -log-file=/data/tidb/log/pd.log -name=pd1

root 23484 2.4 14.7 779468 147244 ? Sl Apr24 701:46 ./tidb-server -L info -store=tikv --path=/data/tidb/tidb --path=127.0.0.1:2379 -log-file=/data/tidb/log/tidb.log

root 23415 2.0 10.1 1359044 101332 ? S

root 9092 0.2 0.1 158240 1972 ? Ssl Mar29 150:51 redis-server 0.0.0.0:6379

root 4072 0.1 0.4 110676 4204 pts/2 Ss 10:16 0:00 -bash

mysql 27252 0.1 16.1 6842120 160408 ? Sl Apr25 50:53 /usr/local/mysql-5.7.25/bin/mysqld --basedir=/usr/local/mysql-5.7.25 --datadir=/data/mysql/data --plugin-dir=/usr/local/mysql-5.7.25/lib/plugin --user=mysql --log-error=/data/mysql/log/mysqld.err --open-files-limit=81920 --pid-file=/data/mysql/mysqld.pid --socket=/tmp/mysql.sock --port=3306

rpcuser 3805 0.0 0.0 28372 8 ? Ss Mar12 0:00 rpc.statd --no-notify

rpc 3798 0.0 0.0 18988 100 ? Ss Mar12 0:13 rpcbind

root 95 0.0 0.0 0 0 ? S Mar12 0:00 [deferwq]

root 944 0.0 0.0 0 0 ? S Mar12 0:24 [kauditd]

显示系统消耗内存资源最高的四个进程

# ps aux | grep -v "USER" | sort -rn -k +4 | head -4 | awk -F ' ' '{print $11,$4}'

/usr/local/mysql-5.7.25/bin/mysqld 16.1

./tidb-server 14.7

./tikv-server 10.1

./pd-server 3.8

虚拟内存使用最多的前10个进程--详细

# ps auxw|head -1;ps auxw|sort -rn -k5|head -10

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

mysql 23730 73.1 82.4 29577272 27209640 ? Sl Apr30 15657:26 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysqllog/error.log --open-files-limit=65535 --pid-file=/data/mysql/mysql-zhsq-ref1-168.pid --socket=/var/lib/mysql/mysql.sock

root 1285 0.0 0.0 255616 5456 ? Sl Mar07 10:37 /sbin/rsyslogd -i /var/run/syslogd.pid -c 5

root 3228 0.0 0.0 155444 928 pts/0 S+ 09:01 0:00 sort -rn -k5

root 3783 0.4 0.0 123720 7816 ? S

root 1784 0.0 0.0 116916 1280 ? Ss Mar07 0:13 crond

root 3227 0.0 0.0 110240 1172 pts/0 R+ 09:01 0:00 ps auxw

root 2753 0.0 0.0 108320 1984 pts/0 Ss 08:50 0:00 -bash

root 2992 0.0 0.0 108316 1956 pts/1 Ss+ 08:55 0:00 -bash

root 16579 0.0 0.0 108312 1752 ? Ss Apr24 0:00 -bash

root 2751 0.0 0.0 102552 4508 ? Ss 08:50 0:00 sshd: root@pts/0,pts/1

显示内存按大小排序:

# ps -eo size,pid,user,command --sort -size | awk '{ hr=$1/1024 ; printf(".2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }' |cut -d "" -f2 | cut -d "-" -f1

0.00 Mb COMMAND

29381.29 Mb /usr/local/jdk/bin/java

2294.26 Mb /usr/local/cloudmonitor/jre/bin/java

222.86 Mb /sbin/rsyslogd

32.23 Mb /usr/local/aegis/aegis_client/aegis_10_65/AliYunDun

10.67 Mb /usr/local/cloudmonitor/wrapper/bin/./wrapper /usr/local/cloudmonitor/wrapper/bin/../conf/wrapper.conf wrapper.syslog.ident=cloudmonitor wrapper.pidfile=/usr/local/cloudmonitor/wrapper/bin/./cloudmonitor.pid wrapper.daemonize=TRUE wrapper.name=cloudmonitor wrapper.displayname=cloudmonitor wrapper.statusfile=/usr/local/cloudmonitor/wrapper/bin/./cloudmonitor.status wrapper.java.statusfile=/usr/local/cloudmonitor/wrapper/bin/./cloudmonitor.java.status wrapper.lockfile=/var/lock/subsys/cloudmonitor wrapper.script.version=3.5.27

10.30 Mb auditd

4.57 Mb /usr/local/aegis/aegis_update/AliYunDunUpdate

1.40 Mb crond

1.16 Mb ps

0.78 Mb sshd: root@pts/0

0.68 Mb /sbin/udevd

0.68 Mb /sbin/udevd

0.68 Mb /sbin/udevd

0.67 Mb qmgr

0.58 Mb /sbin/dhclient

0.58 Mb /sbin/dhclient

0.58 Mb /usr/sbin/sshd

0.58 Mb /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

0.57 Mb /usr/sbin/zabbix_agentd

.................................................

# ps aux | awk '{print $6/1024 " MB\t\t" $11}' | sort -n

# ps aux | awk '{print $6/1024 " MB\t\t" $11}' | sort -n

0 MB [aio/0]

0 MB [aio/1]

0 MB [aio/2]

0 MB [aio/3]

0 MB [async/mgr]

0 MB [ata_aux]

0 MB [ata_sff/0]

0 MB [ata_sff/1]

0 MB [ata_sff/2]

0 MB [ata_sff/3]

0 MB [bdi-default]

0 MB [cgroup]

0 MB COMMAND

0 MB [cqueue]

0 MB [crypto/0]

0 MB [crypto/1]

0 MB [crypto/2]

....................................................

....................................................

....................................................

....................................................

1.51172 MB qmgr

1.80078 MB -bash

2.34766 MB pickup

2.58594 MB /usr/local/aegis/aegis_update/AliYunDunUpdate

4.37891 MB sshd:

5.02734 MB /usr/local/aegis/aegis_client/aegis_10_65/AliYunDun

6.8125 MB /sbin/rsyslogd

63.2031 MB /usr/local/cloudmonitor/jre/bin/java

19845 MB /usr/local/jdk/bin/java

shell脚本一例:

# vim mem.sh

#!/bin/bash

date=`date "+%Y-%m-%d %H:%M:%S"`

#显示消耗资源内存最高的进程名

first=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k +4 | head -4 | awk -F ' ' '{print $11}' | sed -n 1p`

Second=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k +4 | head -4 | awk -F ' ' '{print $11}' | sed -n 2p`

Third=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k +4 | head -4 | awk -F ' ' '{print $11}' | sed -n 3p`

Fourth=`ps aux | grep -v "grep" | grep -v "USER" | sort -rn -k +4 | head -4 | 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"

运行结果展示:

# ./mem.sh

2019-05-14 10:23:00 /usr/local/mysql-5.7.25/bin/mysqld 0.0

16.1

2019-05-14 10:23:00 ./tidb-server 14.7

2019-05-14 10:23:00 ./tikv-server 10.1

2019-05-14 10:23:00 ./pd-server 3.8

上述内容就是Linux中显示内存和CPU使用率最高的进程是怎么样的及SHELL脚本怎么编写,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

内存 进程 最高 使用率 脚本 资源 消耗 内容 技能 知识 结果 简明 简明扼要 信息 大小 就是 文章 显示系统 更多 用率 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 5g网络技术概念股 阜阳市徽梦网络技术有限公司 手机网络安全漏洞解决方法 福建应用软件开发多少钱 大学生 网络技术 江西品一网络技术有限公司 网络安全的基本模型结构 威胁网络安全的主要因素有 淄博市网络安全检查汇报 数据库分组要求三个条件相等 软件开发的研究方法和手段 网络安全具有以下的主要特征 ddd单体框架处理多数据库事务 快车无法连接服务器 怎么在数据库模拟大量数据 有没有女生学软件开发 数据库主键稳定性 安大网络安全实验报告 无线传感器网络技术 实验 学校网络安全工作报告制度 不同运营商的服务器 广州软件开发公 一台服务器诞生需要经过几道坎 数据库引擎注册表删除 治安管理处罚法 网络安全 Excel导出数据库格式 网络安全概念二会 人民日报数据库刘畅简历 如何连接远程服务器 网络安全论文设计任务书
0