mutt是linux下一个十分方便的邮件发送程序,不过有时候由于设置问题可能会出现mutt发送中文邮件乱码的情况。
首先,mutt的安装
1 yum -y install sendmail
2 #需要安装sendmail并开启防火墙的25端口,如果你需要收邮件110端口也要开
3 yum -y install mutt
二、配置信息
关于配置信息,有一点需要说明的,网上很多教程都说,编辑/root/.muttrc以修改配置文件,我想说的是,我在安装完成之后, /root目录下并没有 .muttrc 这个隐藏文件,你可以从其它地方复制过来,或者自己新建一个文件。这里我是复制的。
你可以通过find命令找到Muttrc这个文件,命令如下 find / -name Muttrc ,然后通过命令 cp /etc/Muttrc /root/.muttrc 复制到 /root 下后更名为 .muttrc ,然后你就可以编辑配置文件了。
1 #如果你收到的邮件乱码,可以尝试设置以下信息(添加在.muttrc末尾就行)
set charset="UTF-8"
# 外发邮件使用的编码
set send_charset="UTF-8"
# 用中文格式显示日期
set locale=`echo "${LC_ALL:-${LC_TIME:-${LANG}}}"`
# 解决没有设置字符编码的信件显示为乱码的问题
charset-hook ^us-ascii$ GB2312
# 解决主题为UTF-8的信件标题显示为乱码的问题
charset-hook !UTF-8 GB2312
set assumed_charset="GB2312"
# 解决中文附件名为乱码的问题
set rfc2047_parameters=yes
set envelope_from=yes
set use_from=yes
set from=XXXX@163.com
set realname="我的姓名"
三、mutt邮件发送语 法:
mutt [-hnpRvxz][-a][-b][-c][-f][-F][-H][-i][-m] [-s][邮件地址]
参 数:
-a 在邮件中加上附加文件。
-b 指定密件副本的收信人地址。
-c 指定副本的收信人地址。
-f 指定要载入的邮件文件。
-F 指定mutt程序的设置文件,而不读取预设的.muttrc文件。
-h 显示帮助。
-H 将指定的邮件草稿送出。
-i 将指定文件插入邮件内文中。
-m 指定预设的邮件信箱类型。
-n 不要去读取程序培植文件(/etc/Muttrc)。
-p 在mutt中编辑完邮件后,而不想将邮件立即送出,可将该邮件暂缓寄出。
-R 以只读的方式开启邮件文件。
-s 指定邮件的主题。
-v 显示mutt的版本信息以及当初编译此文件时所给予的参数。
-x 模拟mailx的编辑方式。
-z 与-f参数一并使用时,若邮件文件中没有邮件即不启动mutt。
四、举例
这里我用自己备份网站的一段代码举例加以说明
1 mutt -s "Test mail" XXX@163.com < hello.txt
hello.txt里是邮件内容
2 mutt -s "Test mail" XXX@163.com -a test.txt < hello.txt
添加附件test.txt