Unix发送邮件 – HTMLembedded图像无法正常工作

通过在SO.com的先前的post,我已经尝试build立我的脚本发送电子邮件到我的Outlook帐户与电子邮件正文中的图像内联。 但是html内容正在显示在html中而不是显示图像。 请帮忙。

这是我的片段

{ echo "TO: XXX@YYY.com" echo "FROM: TEST_IMAGE@YYY.com>" echo "SUBJECT: Embed image test" echo "MIME-Version: 1.0" echo "Content-Type: multipart/related;boundary="--XYZ"" echo "--XYZ" echo "Content-Type: text/html; charset=ISO-8859-15" echo "Content-transfer-encoding: 7bit" echo "<html>" echo "<head>" echo "<Meta http-equiv="content-type" content="text/html; charset=ISO-8859-15">" echo "</head>" echo "<body bgcolor="#ffffff" text="#000000">" echo "<img src="cid:part1.06090408.01060107" alt="">" echo "</body>" echo "</html>" echo "--XYZ" echo "Content-Type: image/jpeg;name="sathy.jpg"" echo "Content-transfer-encoding: base64" echo "Content-ID: <part1.06090408.01060107>" echo "Content-disposition: inline; filename="sathy.jpg"" echo $(base64 sathy.jpg) echo "' />" echo "--XYZ--" }| /usr/lib/sendmail -t

我收到的电子邮件包含下面显示的图像,

--XYZ Content-Type: text/html; charset=ISO-8859-15 Content-transfer-encoding: 7bit <html> <head> <Meta http-equiv=content-type content=text/html </head> <body bgcolor=#ffffff text=#000000> <img src=cid:part1.06090408.01060107 alt=> </body> </html> --XYZ Content-Type: image/jpeg;name=sathy.jpg Content-transfer-encoding: base64 Content-ID: <part1.06090408.01060107> Content-disposition: inline; filename=sathy.jpg /9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAoAAD/4QNxaHR0cDov ....base64 values..... /> --XYZ-- ----XYZ--

你能帮我什么,我错过了

如何将PNG格式的XImage保存为base64string?

BASH Base64编码脚本不正确的编码

将base64 svg数据解码为一个svg文件

Unix base64编码不匹配

由于 n,windows和linux的base 64编码不匹配

通过sed反向引用base64命令

从给定的散列计算base64编码的散列?

经过编码到90度旋转的base64图像

将EXE或其他文件转换为文本格式并返回

包含二进制可执行文件

使用echo打印邮件头的方式可以使用双引号 – 您需要使用反斜杠( " )将其转义,以使其工作。

另外,你的边界是错误的。 如果你定义了boundary=--XYZ ,那么每个消息部分需要以----XYZ开始(你需要添加两个破折号),否则你的边界只应该是XYZ 。 而且哑剧部分的标题必须用空行与主体分开。

如果你真的需要从shell脚本生成一个邮件,那么我的建议是摆脱所有的回声,而不是使用heredoc:

sendmail -t <<EOT TO: XXX@YYY.com FROM: <TEST_IMAGE@YYY.com> SUBJECT: Embed image test MIME-Version: 1.0 Content-Type: multipart/related;boundary="XYZ" --XYZ Content-Type: text/html; charset=ISO-8859-15 Content-transfer-encoding: 7bit <html> <head> <Meta http-equiv="content-type" content="text/html; charset=ISO-8859-15"> </head> <body bgcolor="#ffffff" text="#000000"> <img src="cid:part1.06090408.01060107" alt=""> </body> </html> --XYZ Content-Type: image/jpeg;name="sathy.jpg" Content-transfer-encoding: base64 Content-ID: <part1.06090408.01060107> Content-disposition: inline; filename="sathy.jpg" $(base64 sathy.jpg) --XYZ-- EOT

相关文章

本篇内容主要讲解“gitee如何上传代码”,感兴趣的朋友不妨来...
这篇“从gitee上下的代码如何用”文章的知识点大部分人都不太...
这篇文章主要介绍“gitee如何下载仓库里的项目”,在日常操作...
本篇内容主要讲解“怎么在Gitee上更新代码”,感兴趣的朋友不...
本文小编为大家详细介绍“怎么将工程托管到gitee”,内容详细...
这篇文章主要介绍了gitee中图片大小如何调整的相关知识,内容...