当前第2页 返回上一页
下面给出完成的代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #!/bin/bash
# 监控分区的空间使用情况,超过预设值告警
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:~/bin
export LANG=en
# 分区空间使用率阀值
USE_LIM=70
while ((1))
do
disks=$( df | grep ^/dev | awk '{print $1":"$5}' )
for disk in $disks
do
used=$( echo $disk | cut -d: -f2 | cut -d '%' -f1)
if [ "$used" -ge "$USE_LIM" ];then
# 调用告警脚本,这里直接用 echo 来替代了
echo "$(echo $disk | cut -d: -f1) is used $used%"
fi
done
sleep 10
done
|
注意:一般我们服务器上用的语系都是英文的,特别是在编写shell脚本的时候,建议加上这样一行
因为我们是要做实时的监控,所以脚本里使用了死循环,表示此脚本不会停会一直循环执行。当然,执行速度也是要做限制的,不然占用太多服务器资源就不太好了。所以这里使用了sleep 10,表示10秒监控一次。
另外这里还要一点需要注意,就是过滤掉百分号%。这里我们使用了cut命令来过滤掉%,然后拿到纯数字型的分区使用率和预设值做比较。
以上就是shell编程实战之监控磁盘分区的使用率的详细内容,更多文章请关注木庄网络博客!
返回前面的内容
相关阅读 >>
shell脚本命令示例
shell--标准输入输出(read&echo)
linux终端执行shell脚本时提示权限不足
详细讲解linux shell中的printf的用法
总结shell中的特殊字符
shell编程实战之内存检查超过设定值杀死php-fpm进程
shell脚本命令示例
linux中bash是什么意思?
bash shell:测试文件或目录是否存在
有关linux中shell内置判断语句的介绍
更多相关阅读请进入《shell》频道 >>
转载请注明出处:木庄网络博客 » shell编程实战之监控磁盘分区的使用率