CentOS6.5中使用sendmail发送crontab运行报告

shell学习笔记2,410字数 843阅读2分48秒阅读模式

在服务器上安装了一个CentOS6.5(CentOS6.5下载地址),准备用crontab跑点定时任务,像批量查竞争对手SEO数据、批量查收录、批量向百度实时推送URL等。在安装完CentOS6.5后,发现sendmail已经是默认可用的,通过shell命令行的方式能成功将邮件发送到任何一个邮箱里。亲测可用的代码如下:

sendmail -t <<EOF
From: Mail testing <[email protected]>              //从哪里发出
To: [email protected]                                     //发给谁
Cc: [email protected]                              //抄送给谁
Bcc: [email protected]                     //暗送给谁
Subject: 邮件测试                                                  //标题
———————————-                                        //内容
测试邮件内容
———————————
EOF

效果如下图所示:

在shell命令行中使用sendmail发送邮件

-t     这个参数是一定要加的,否则发送不出去

但是crontab运行后,并没有将运行后的结果发送到我的邮箱里,似乎在crontab里,以上这种发送邮件的方式不可用,于是我在各种找解决方法之后,成功找到一个办法来解决了这个问题,代码如下:

echo "今天的URL数量:$num,比昨天新增数量:$addition"|mail -s "$date sitemap has been downloaded successfully!From the fang-server!" -r [email protected] [email protected]

运行后效果如下图所示,从此,每天上午9点半,我就能定时收到我需要的报告了~~~~

centos6.5下面用mail命令发送附件

有时候我们需要在邮件中插入一些附件什么的,就可以用以下命令来实现,主要是一个mail -a参数

echo "something"|mail -s "subject" -a test.txt -r [email protected] [email protected]

PS:方法虽好,不要用来发送垃圾邮件哦!    ^-^

 最后更新:2015-6-5
  • 本文由 asdfasd 发表于 2015-05-2414:43:24
  • 转载请务必保留本文链接:http://wp.fangfa.me/shell/centos-crontab-sendmail.html