我一直在使用多个时间用pdf附件发送纯文本电子邮件,使用:
-s“主语”-a file.pdf < mybody.txt
和没有附件的html电子邮件使用:
-e my_hdr内容类型: text/html“-s”主题“< mybody.html”
但我现在想发送一封html电子邮件,并附上pdf附件,并:
-e my_hdr内容类型: text/html“-s”主题“-a file.pdf < mybody.html”
不管用。
在电子邮件正文中,html和pdf以及它们的标题都显示为纯文本。
有人知道怎么做吗?
干杯
加里
发布于 2012-11-29 07:49:50
你真的不能这么做。Mutt不是用来以编程方式发送消息的,它是一个交互式邮件客户端;用于发送消息的命令行标志只作为一个次要的附加项存在,这样做是不可能的。
my_hdr
命令不应该用于设置MIME头(如Content-Type
)。即使你不包括附件,它也不起作用。您的第二个命令中的消息将有两个Content-Type
头;第一个是mutt生成的,它声明消息是text/plain
,第二个是您指定的。只是碰巧您用来检查消息的客户机正在查看您的标头。对我来说,mutt将以HTML的形式显示该消息,但thunderbird将显示未呈现的文档。
当试图组合发送HTML和附件时,同样的事情会发生。有多个Content-Type
头。第一种是来自杂种狗说它的信息是multipart/mixed
,第二种是说它是text/html
。在我的测试中,mutt将再次尊重第二个标头,因此尝试将整个消息(包括附件)呈现为HTML。Thunderbird再次授予第一个Content-Type
头,因此可以找到两个部分,即HTML和附件,但是HTML本身并没有指定它是HTML的Content-Type
头,因此它不会以这样的方式呈现,而是显示原始的源代码。
您可以通过将HTML和PDF作为附件发送到一个空的正文中,从而得到某种程度的接近:
mutt -s "Subject" -a mybody.html -a file.pdf -- user@example.com < /dev/null
但是,您最好使用一个设计为以编程方式发送更复杂消息的工具。
https://stackoverflow.com/questions/13627742
复制