我拉我的头发试图找出如何发送一个HTML消息使用进出口。
发送正常的短信:
$ mail -s "Testing" [email protected] 123 CTRL-D
这工作正常,但我怎么能指定Content-type: text/html ?
我的最终目标是能够做到这一点:
$ eximstats -html /var/log/exim4/mainlog | mail -s "Exim report" [email protected]
并真正到达作为一个HTML电子邮件
对使用的MTA软件漠不关心的通用方法是:
#!/bin/sh cat << HEREFILE | /usr/sbin/sendmail -t MIME-Version: 1.0 From: HTML SENDER <root@$( hostname )> To: [email protected] Subject: HTML formatted message Content-Type: text/html; charset=UTF-8 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"> <html><body> Hello, <B>admin</B>! </body></html> HEREFILE ####
即使sendmail -t命令也应该是不可触摸的,只要exim / postfix / qmail都模仿sendmail与旧软件的兼容性。
这是我在Kondybas的帮助下解决的问题:
#!/bin/bash cd /var/log/exim4 cat << HEREFILE | /usr/sbin/sendmail -t MIME-Version: 1.0 From: root@$( hostname -f) To: [email protected] Subject: Exim Report $(date +"%Y-%m-%d") Content-Type: text/html; charset=UTF-8 $(/usr/sbin/eximstats -html mainlog mainlog.1) HEREFILE