开发监控Linux 内存 Shell 脚本

问题场景:

开发Shell 脚本判断系统剩余内存的大小,如果低于100MB,就邮件报警给系统管理员,并且将脚本加入系统定时任务,即每3分钟执行一次检查。

分两步:

第一步:编写脚本

脚本memory_mon.sh如下:

#!/bin/bash
FreeMem=`free -m|awk 'NR==3 {print $NF}'` #获取系统当前的内存值,赋给变量FreeMem
CHARS="Current memory is$FreeMem."       #定义字符串CHARS变量,作为输出及供邮件正文使用
 
if [ $FreeMem -lt 100 ]
   then
       echo $CHARS|tee /tmp/messages.txt #屏幕输出提示,并写入文件
       mail -s "`date +%F-%T`$CHARS"chenjt5@mail2.sysu.edu.cn</tmp/messages.txt
fi

分析:

free -m是显示用兆作单位,NR==3表示第三行,$NF表示最后一列。具体free的各个参数的具体含义参考我的博文:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值