linux通过shell脚本发送网络邮件

很多运维人员在做一些简单监控的脚本时,需要对监控内容能够及时反馈,比如监控CPU使用率达到50%就会收到警告,这时候邮件起了很大的作用,那么如何在shell脚本中调用邮件工具呢,这里有一个简便的方法:

首先,在我们常用的centos和rhel版本中默认安装了postfix,检查一下是否有mail所需的包:按下命令mail,若能正常使用,则跳过下一步,若不能请安装包:mailx


这时我们需要把登录信息下如mail程序:


在文件/etc/mail.rc中添加如下两行:

set [email protected] smtp=smtp.163.com

set [email protected] smtp-auth-password=******** smtp-auth=login

注:

from为发送邮件的邮箱帐号([email protected]

smtp为发送邮件的域名所需的邮件传输协议,这里可以去网站或者客户端查到(smtp.163.com)

smtp-auth-user发送邮件的帐号(需使用完整帐号)([email protected]

smtp-auth-password帐号的密码(********)

smtp-auth帐号使用状态

这时,我们在/root/test文件中写入要邮寄的内容:


使用mail -s "hello"  [email protected] < /root/test即可成功发送邮件。

把以上命令写入脚本,检测的内容或者结果放入test文件,然后把两行配置文件使用echo追加或者sed的方法加入/etc/mail.rc,邮件寄出之后,在用sed删除即可。

你可能感兴趣的:(linux通过shell脚本发送网络邮件)