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<l Apr24 597:36 ./tikv-server --pd=127.0.0.1:2379 --data-dir=/data/tidb/tikv --log-file=/data/tidb/log/tikv.log
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<sl Apr26 126:21 /usr/local/aegis/aegis_client/aegis_10_63/AliYunDun
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
指令碼如下:
# 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
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2644256/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何用bash shell 指令碼監控 Linux記憶體、磁碟和 CPU?指令碼Linux記憶體
- 在Linux中,如何檢視linux中記憶體使用率最高的程序?Linux記憶體
- 7 個測量 Python 指令碼和控制記憶體以及 CPU 使用率的技巧Python指令碼記憶體
- Linux系統CPU和記憶體使用率統計命令Linux記憶體
- 利用 Shell 指令碼來監控 Linux 系統的記憶體指令碼Linux記憶體
- linux 查詢最消耗CPU和記憶體的程式Linux記憶體
- redis裡顯示key大小的shell指令碼Redis指令碼
- Linux檢視佔用記憶體的程式指令碼Linux記憶體指令碼
- Shell----監控CPU/記憶體/負載高時的程式記憶體負載
- 統計記憶體使用率百分比的指令碼記憶體指令碼
- rman備份的shell指令碼(例子)指令碼
- 顯示 Oracle UNIX 程式的 CPU 和 RAMOracle
- linux shell指令碼中 =~ 的作用Linux指令碼
- [Shell] Shell 生成 HTML指令碼,可顯示錶格HTML指令碼
- 監控磁碟使用率的shell指令碼指令碼
- *.cpl檔案的妙用(隨意修改cpu顯示資料,記憶體顯示隨意修改等等)記憶體
- linux aix檢視CPU和記憶體LinuxAI記憶體
- linux下檢視最消耗CPU、記憶體的程式Linux記憶體
- 如何在 Bash Shell 指令碼中顯示對話方塊指令碼
- 如何使用 Bash 指令碼從 SAR 報告中獲取 CPU 和記憶體使用情況指令碼記憶體
- 檢視程式cpu和記憶體佔用率記憶體
- Linux shell程式設計(一)shell指令碼中的變數詳解Linux程式設計指令碼變數
- 在Linux中,如何檢查系統的CPU和記憶體使用情況?Linux記憶體
- 【AIX 學習】記憶體和CPU消耗程式排序AI記憶體排序
- 【Azure Developer】通過Azure提供的Azue Java JDK 查詢虛擬機器的CPU使用率和記憶體使用率DeveloperJavaJDK虛擬機記憶體
- Linux檢視CPU和記憶體使用情況Linux記憶體
- linux下獲取佔用CPU和記憶體資源最多的10個程式Linux記憶體
- linux shell 指令碼攻略筆記Linux指令碼筆記
- Shell指令碼應用兩個例子指令碼
- 什麼是Shell指令碼?Shell指令碼在Linux運維工作中的地位!指令碼Linux運維
- CPU快取和記憶體屏障快取記憶體
- SUSE檢視CPU和記憶體記憶體
- linux常用的shell指令碼Linux指令碼
- 遊戲畫面中實時顯示FPS幀數和CPU和顯示卡使用率、溫度等資訊的方法遊戲
- Linux技術——linux下檢視記憶體和CPU的使用情況Linux記憶體
- shell基礎教程二十一: shell指令碼中echo顯示內容帶顏色指令碼
- Aix命令:列出使用記憶體和Cpu前幾位的程式AI記憶體
- vmstat ,iostat系統CPU、記憶體、磁碟使用率報告iOS記憶體