现在的位置: 首页 > 综合 > 正文

linux 发送中文邮件

2018年01月24日 ⁄ 综合 ⁄ 共 1400字 ⁄ 字号 评论关闭

我们都知道,linux下自带了一个mail命令,使用它可以很容易的发送邮件,有三种方式,如下:

1)mail -s test yangfang@fudan.edu.cn

2)echo “mail content”|mail -s test yangfang@fudan.edu.cn 

3)mail -s test yangfang@fudan.edu.cn < file

但是mail有一个问题,就是邮件主题、邮件正文中如果有中文就会显示乱码。


使用mutt可以解决上面的中文问题:

1、mutt的安装

1 yum -y install sendmail

2 #需要安装sendmail并开启防火墙的25端口,如果你需要收邮件110端口也要开

3 yum -y install mutt

2、配置信息

  关于配置信息,有一点需要说明的,网上很多教程都说,编辑/root/.muttrc以修改配置文件,我想说的是,我在安装完成之后,
/root目录下并没有 .muttrc 这个隐藏文件,你可以从其它地方复制过来,或者自己新建一个文件。这里我是复制的。

  你可以通过find命令找到Muttrc这个文件,命令如下 find / -name Muttrc ,然后通过命令 cp /etc/Muttrc /root/.muttrc 复制到 /root 下后更名为 .muttrc ,然后你就可以编辑配置文件了。 1 #如果你收到的邮件乱码,设置以下信息

2 set charset="utf-8"

3 set rfc2047_parameters=yes

4 #如果你想自定义发件人信息,需要进行如下设置

5 set envelope_from=yes

6 set use_from=yes

7 set from=root@itdhz.com

8 set realname="itdhz" 
  安装完mutt后,在/usr/share/doc/mutt* 下有一份很好的手册,可以看一下。

3、邮件发送

  语 法:

  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。

举例:

echo "test" | mutt 408160341@qq.com -s "itdhz数据备份" -a /home/backup/itdhz.sql

mutt -s "中文测试邮件"  abc@itestcom  xuql@itest.com < /tmp/abc.txt

抱歉!评论已关闭.