Centos的mailx如何发送带html的邮件?

想用CentOS的mailx命令来发送带html的邮件,但是网上的方法试了很多都没有用,如下测试不行:

echo "<b><div style='color:red'>HTML Message goes here</div></b>" | mailx -s "$(echo -e "test\nContent-Type: text/html;charset=gb2312")" xxxx@qq.com

这种方式在Foxmail上收件虽然正常,但是在QQ邮箱中看到还是普通文字。
甚至还有mailx -a的,-a参数是加附件,这种也不行。

通过查看邮件原文,发现有两个Content-Type,在Foxmail中应该是只识别了第一个,而QQ邮箱已第二个为准。

Subject: test
Content-Type: text/html;charset=gb2312
Message-ID: xxxxxxxxxx
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

只是不知道怎么修改默认的“Content-Type: text/plain”。
只想用mailx这个方式,sendmail的方式不想用,谢谢。

阅读 6.9k
2 个回答

mailx -a 'Content-Type: text/html' -s "my subject" user@gmail.com < email.html

# 创建头文件
$ cat mailheader
To: user@gmail.com
Subject: my subject
Content-Type: text/html

# 发送邮件
$ cat mailheader email.html | sendmail -t

两种方式均可。

新手上路,请多包涵

mail -s "$(echo -e "This is the subject\nContent-Type: text/html;charset=utf-8\nMime-Version: 1.0")" ****.qq.com <index.html

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题