8 个答案:
答案 0 :(得分:38)
我无法获得任何已发布的解决方案,但最终在其他地方找到了它,并且效果很好:
(
echo "From: ${from}";
echo "To: ${to}";
echo "Subject: ${subject}";
echo "Content-Type: text/html";
echo "MIME-Version: 1.0";
echo "";
echo "${message}";
) | sendmail -t
答案 1 :(得分:17)
如果我理解正确,您希望使用linux sendmail命令以HTML格式发送邮件。这段代码适用于Unix。请试一试。
echo "From: me@xyz.com
To: them@xyz.com
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary='PAA08673.1018277622/server.xyz.com'
Subject: Test HTML e-mail.
This is a MIME-encapsulated message
--PAA08673.1018277622/server.xyz.com
Content-Type: text/html
HTML E-mail--PAA08673.1018277622/server.xyz.com
" | sendmail -t
有关sendmail配置的详细信息,请参阅此link。希望这会有所帮助。
答案 2 :(得分:4)
答案 3 :(得分:4)
我知道您要求发送sendmail,但为什么不使用默认的mail?它可以轻松发送HTML电子邮件。
适用于:RHEL 5.10 / 6.x& CentOS 5.8
示例:
cat ~/campaigns/release-status.html | mail -s "$(echo -e "Release Status [Green]\nContent-Type: text/html")" to.address@company.com -v
答案 4 :(得分:3)
使用mail跟进上一个答案:
通常,客户端邮件程序会解释某人的html输出,这可能不会使用固定宽度的字体格式化。因此,你的格式很好的ascii对齐会搞得一团糟。要按照上帝的意图发送老式的固定宽度,试试这个:
{ echo -e "
"
echo "Descriptive text here."
shell_command_1_here
another_shell_command
cat <
This is the ending text.