从 cronjobs 发送 html 电子邮件的解决方案

从 cronjobs 发送 html 电子邮件的解决方案

我正在寻找一种方法来将各种 cronjob 的输出通过电子邮件发送到特定地址。cronjob MAILTO 命令太通用了。因此,我将作业的输出通过管道传输到 mail 命令中。

除了输出是 HTML 编码并且我需要向每条消息添加 Content-Type 标头之外,这可以正常工作。

我的邮件版本不支持 -a 标志,这本来是完美的。此外,由于 sendmail 在 chrooted jail 中运行,因此似乎不可用。

答案1

此解决方案可根据需要发挥作用。

回显HTML 消息在此处“| mail -s“$(echo -e“这是主题\nContent-Type:text / html”)”

从 :https://stackoverflow.com/questions/2591755/how-send-html-mail-using-linux-command-line

答案2

像这样将其通过管道传输到shell脚本

(echo "Content-type: text/html" ; cat ) | mail recipient

答案3

这在 Solaris 10 上运行!

1)确保您的系统在 /etc/hosts 上定义了 SMTP 服务器

##############################################
#               SMTP SERVER                  #
##############################################
10.100.231.115    smtpserver.yourdomain.com

2)在拥有 cron 作业的用户的主目录中,创建文件:.forward

3) 在文件 .forward 中插入您想要向其发送 cron Job 输出的电子邮件地址。

请注意,我不认为此输出是 HTML 格式!试试看吧!

相关内容