前言:

使用shell脚本查询服务器的cpu、内存、磁盘的使用率;如果需要对此脚本进行理解的话,请首先熟悉下linux的基本命令和管道符的知识

脚本献上:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
#计算cpu使用率, -n number:指定在结束前应该产生的最大迭代次数或帧数,一般迭代次数越大,获取到的cpu使用率越准确; 本脚本中是迭代了5次,"-n5"
cpu=`top -b -n5 | fgrep "Cpu(s)" | tail -1 | awk -F'id,' '{split($1, vs, ","); v=vs[length(vs)]; sub(/\s+/, "", v);sub(/\s+/, "", v); printf "%d", 100-v;}'`
echo $cpu'%'

#统计内存使用率
mem_used_persent=`free -m | awk -F '[ :]+' 'NR==2{printf "%d", ($3)/$2*100}'`
# -e参数是使 "\n"换行符生效进行输出换行的
echo -e $mem_used_persent'%\n'

#统计磁盘使用情况,df -P参数可以防止打印输出的内容换行
df -THP | awk -F '[ ]+' 'NR!=1{print $1","$6}'

运行结果:

12%
37%

/dev/mapper/vg_minghui-lv_root,25%
tmpfs,1%
/dev/sda1,10%
/dev/sr0,100%

前两行的内容:12% - cpu的使用率, 37% - 内存的使用率;

后面四行的内容:每个磁盘分区的使用率,磁盘分区名称和其使用率之间用英文逗号隔开。

提示:

在脚本编写好,且运行前,可以先使用命令 bash   -n   *.sh 判断下脚本是否存在语法错误,如果存在语法错误的话,再使用命令 bash   -x   *.sh 一步步执行脚本看下到底哪个地方存在语法错误。

不要忘记留下你学习的足迹 [点赞 + 收藏 + 评论]嘿嘿ヾ

一切看文章不点赞都是“耍流氓”,嘿嘿ヾ(◍°∇°◍)ノ゙!开个玩笑,动一动你的小手,点赞就完事了,你每个人出一份力量(点赞 + 评论)就会让更多的学习者加入进来!非常感谢! ̄ω ̄=