概况
在Linux中,有很多种方式可以实现Shell中发送邮件。然而尝试sendmail失败后,掉入了一个大坑。最后发现直接简单粗暴使用mail或mailx(以下统称为mail)就可以了。
当然如果需要自己搭建邮件服务器,那么类似sendmail这类命令还是不能避免的。单纯使用mail实际上是使用了外部的smtp服务,这里我就是使用163的。
步骤1–安装
部分Linux是原本就带有mail的了,没有也不怕,执行以下命令就可以了(以下所有情况均在CentOS下执行测试)
1 | shell> yum install mailx -y |
步骤2–配置
接下来进行外部smtp配置,修改/etc/mail.rc
,在文档最后添加以下几句,保存退出。
1 | set from=xxx@163.com |
步骤3–发送邮件
执行以下命令即可实现邮件发送了
1 | shell> echo "邮件正文内容" | mail -s "邮件主题" xxx@xxx.com |
这就是差不多最简单的一封邮件。有点需要注意的是,163好像会检测邮件是否太过垃圾(虽然我也不知道它的策略)。一旦被它认为是垃圾邮件,就会被退信了。所以测试写的内容也不能太过随意。
(•̀ᴗ•́)و ̑̑