sendmail+formail乱码

之前使用sendmail发邮件一直有乱码的问题,后来使用如下方法:
cat /home/striven/tmp/applist.log |formail -I "From:[email protected]" -I "MIME-Version:1.0" -I "Content-type:text;charset=utf-8" -I "Subject:applist" |/usr/sbin/sendmail -toi $mailuser
这样邮件的正文就正常了,但主题如果有中文会乱码,而且看不到收件人有哪些,这是因为formail里没有定义To:给sendmail,改进如下:
cat /home/striven/tmp/applist.log |formail -I "From:[email protected]" -I "MIME-Version:1.0" -I "Content-type:text;charset=utf-8" -I "Subject:applist" -I "To:$mailuser" |/usr/sbin/sendmail -toi
这样收件人就看得到了,而不会再是
 

Undisclosed recipients。
对于主题或者收发邮件人中文乱码的问题,通过计算中文以后的base64,再给sendmail,
echo “中国人我是” |formail -I "From:[email protected]" -I "MIME-Version:1.0" -I "Content-type:text;charset=utf-8"
-I "Subject:=?UTF-8?B?`echo 'sendmail发邮件为什么主题会中文乱码?'|base64`?=" -I "To:[email protected]"|
/usr/sbin/sendmail -toi
这样就可以。
听说也可以使用mutt来解决

 

你可能感兴趣的:(sendmail,formail乱码,sendmail主题乱码)