从 shell CLI 发送 HTML 电子邮件

从 shell CLI 发送 HTML 电子邮件

我正在运行 cron 作业,其中有 html 格式的输出。我想以 html 格式将该输出发送给我的电子邮件地址。

有什么办法吗?

php  /home/bla/bla_bla.php | mail -s "Bla Bla"  -s "[email protected]"

答案1

你可能想看看哑剧构造。它对于这种事情很方便。我使用它来发送生成的 HTML 文档作为日常 cronjob 的一部分,如下所示:

/usr/bin/mime-construct --to "[email protected]" --subject "My daily html foo" --multipart multipart/alternative --type text/html --file htmlfiletosend.html

如果您不介意消息是多部分的,则可以删除该部分。它还可以通过 stdin 获取 html,如下所示:

php your_script.php | mime-construct --to "[email protected]" --subject "Foo Report" --type text/html --file -

我不知道您使用的是哪个发行版,但是这个在 Debian 和 Ubuntu 的主要存储库中可用,我想 RHEL 和衍生版本可能也有它。

答案2

添加 Content-Type 标头,例如-a 'Content-Type: text/html; charset="iso-8859-1"'或使用猜测 Content-Type 的邮件客户端(例如,GNU mailutils 可能这样做)。

相关内容