如果把汉字直接作为邮件的标题 subject,会出现显示乱码或者收不到邮件的情况,因为标题使用汉字,需要进行编码。
#!/bin/bash
subject=`echo "汉字test" | base64`
cat << EOF | sendmail -f test@youxaingmi.com -t youxangmi.com@qq.com
From: TEST <test@youxaingmi.com>
To: yxm <youxangmi.com@qq.com>
MIME-Version: 1.0
Content-type: text/html
Subject: =?UTF-8?B?${subject}?=
this is mail
正文中可以有汉字
EOF
=?UTF-8?B?${subject}?=
${subject} 是经过 base64的编码