shell脚本:实时显示磁盘、内存、负载的使用情况

1.要求

  • system_watch.sh disk memory upload (每秒显示)
  • disk 监控磁盘使用情况 (df查看)
  • memory 监控内存使用情况 (free)
  • upload 监控启动负载 (uptime)

2.代码

在这里插入图片描述

3.结果

在这里插入图片描述
sh system_watch.sh disk
在这里插入图片描述
sh system_watch.sh memory
在这里插入图片描述
sh system_watch.sh uptime
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
#!/bin/bash # 获取当前时间 now=$(date +"%Y-%m-%d %H:%M:%S") # 获取CPU使用情况 cpu=$(top -b -n 1 | grep "Cpu(s)" | awk '{print $2 + $4}') # 获取内存使用情况 mem=$(free | grep Mem | awk '{print $3/$2 * 100.0}') # 获取磁盘使用情况 disk=$(df -h | grep "/dev/sda1" | awk '{print $5}' | cut -d'%' -f1) # 获取系统负载 load=$(uptime | awk '{print $10}' | cut -d',' -f1) # 输出监控信息 echo "$now CPU使用率:$cpu% 内存使用率:$mem% 磁盘使用率:$disk% 系统负载:$load" # 如果CPU使用率超过80%,发送警报邮件 if (( $(echo "$cpu > 80" | bc -l) )); then echo "CPU使用率过高,请立即处理!" | mail -s "警报:CPU使用率过高" admin@example.com fi # 如果内存使用率超过80%,发送警报邮件 if (( $(echo "$mem > 80" | bc -l) )); then echo "内存使用率过高,请立即处理!" | mail -s "警报:内存使用率过高" admin@example.com fi # 如果磁盘使用率超过80%,发送警报邮件 if (( $(echo "$disk > 80" | bc -l) )); then echo "磁盘使用率过高,请立即处理!" | mail -s "警报:磁盘使用率过高" admin@example.com fi # 如果系统负载超过1,发送警报邮件 if (( $(echo "$load > 1" | bc -l) )); then echo "系统负载过高,请立即处理!" | mail -s "警报:系统负载过高" admin@example.com fi # 保存监控信息到日志文件 echo "$now CPU使用率:$cpu% 内存使用率:$mem% 磁盘使用率:$disk% 系统负载:$load" >> /var/log/monitor.log

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值