linux下触发事件发邮件

本文介绍如何在Linux系统中配置邮件服务,并通过shell脚本实现日志文件大小监控及邮件通知功能。此外,还展示了如何使用crontab设置定时任务来定期执行脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.设置邮件信息
vi /etc/mail.rc
添加下面几行设置发送邮件的账号信息
set from=***@163.com
set smtp=smtp://smtp.163.com:25
set smtp-auth-user=***@163.com
set smtp-auth-password=***

2.编写自动发送邮件脚本
#/bin/bash
size1=`du -k /usr/local/tomcatlog/tss | awk '{print $1}'`
size2=`du -k /usr/local/tomcatlog/tss_ios | awk '{print $1}'`
size3=`du -k /usr/local/tomcatlog/tss_android | awk '{print $1}'`
if [ $size1 -gt 500 -o $size2 -gt 500 -o $size3 -gt 500 ] ; then
mail -s "title" kehw@ffcs.cn 13122364@qq.com < /usr/local/ffcs/mail/mail.txt
else
exit 0
fi

set `date`#这个点不是单引号,是Esc下面的反引号,同理下面的num外层的是反引号
num=`cat /data/web/log/onekey/smsp.logOct30.log |grep '发送数据失败' |wc -l | awk '{print $1}'`
if [ $num -gt 0 ] ; then
mail -s "title" wenzhen_tang@163.com zhongyiyu@163.com  < /data/web/log/onekey/smsp.log$2$3.log
else
exit 0
fi

//linux shell bash赋值时=左右不能为空 用$表示变量 用-o表示逻辑或,-a表示逻辑与,!表示逻辑非;
//if [];then fi []中间有空格

3.设置定时任务
crontab -e
0 11,23 * * * sh /usr/local/ffcs/mail/notice.sh
保存退出
crontab -l查看定时任务是不是已经加入了
//每天的11点、23点执行任务检查log大小是否超过500k,超过就发送邮件

netstat -an | grep ':80' | wc -l //统计80端口的连接数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值