Linux发送邮件命令,常常想到是的mail。但是这个命令配置比较麻烦。我在网上查了半天,还是没能使用成功。
但是发现另外一个发邮件的命令mutt(The Mutt E-Mail Client http://www.mutt.org/)
mutt的配置和使用都很简单。
交互式的使用方便也很方便,如下图。
不读任何手册,照着界面上的提示就可以各种操作(如添加附件等)
一、安装Mutt
在Ubuntu下安装:
1
2
sudo apt-get install mutt
sudo apt-get install msmtp
其它系统应该到网络上查一下。
二、配置Mutt
这里只作最简单的配置,发邮件就好了。 详细的说明到官方网站 http://www.mutt.org/
a) 在配置文件 /etc/Muttrc 或是 ~/.muttrc 中添加
1
2
3
4
5
set sendmail="/usr/bin/msmtp"
set use_from=yes
set envelope_from=yes
set realname="Jerry Lee"
set from=your_mail_id@163.com
/etc/Muttrc 或是 ~/.muttrc 两个文件只要在文件添加就可以了。
如果你没有root权限/etc/Muttrc文件是不能改的,这样自己的用户目录下创建文件~/.muttrc,添加上面的内容就好了。
b) 在配置文件 ~/.msmtprc 添加
1
2
3
4
5
6
account default
host smtp.163.com
auth plain
user your_mail_id
from your_mail_id@163.com
password your_mail_password
需要修改.msmtprc文件的权限,否则Mutt会报错。
1
$ chmod 600 .msmtprc
PS:
用下面的命令可以检验SMTP服务器是否支持认证的TLS加密
1
2
$ msmtp --host=smtp.126.com –serverinfo
SMTP server at smtp.126.com (m50-111.126.com [123.125.50.111]), port 25: 126.com Anti-spam GT for Coremail System (126com[20101010])Capabilities: PIPELINING: Support for command grouping for faster transmission STARTTLS: Support for TLS encryption via the STARTTLS command AUTH: Supported authentication methods: PLAIN LOGIN This server might advertise more or other capabilities when TLS is active.
三、测试Mutt
使用下面的命令测试一下
1
$ echo hello world | mutt -s "test mail" -a ~/.bash_history –- receiver_mail_id@gmail.com
到你发的邮件去看看,是不是有一封测试邮件了。
参考资料
- 如何在Ubuntu下使用命令发送邮件? http://hi.baidu.com/2young22/blog/item/0b2f311e5676af06314e1528.html
- MuttFaq/Header http://wiki.mutt.org/?MuttFaq/Header
- The Mutt E-Mail Client http://www.mutt.org/
FEATURED TAGS
生活
blog
Java
shell
Unix/Linux
unix
Groovy
jms
mom
middleware
extension
log4j
philosophy
原则
最佳实践
Shell
generic
gnu
windows
cmd
tips
dubbo
Service
设计
class
date
i/o
api
design
服务
优劣
Linux
git
week
日期
星期
计算
月份
命令行
配置
Windows
Dubbo
约定
权限
Command Line
发布
java
cooma
release
微容器
github
microcontainer
扩展点
容器