作为一个系统管理员,有时我们需要发送邮件给客户或者服务器上的其他人,这时我们会使用基于web的邮件系统来发送邮件,这是不是最便捷的方法呢?绝对不是。
在这篇教程里,我们将使用mutt(一个终端email客户端)命令来从命令行发送邮件。
Mutt是什么?
Mutt是一个基于命令行的Email客户端。它是基于Unix的系统上发送和阅读邮件的十分强大而有用命令。Mutt也支持用POP和IMAP协议接收邮件。它提供了一个彩色的界面使得从命令行发送邮件更加友好。
Mutt的特性
Mutt包含以下主要特性:
易于安装和配置
可以从命令行发送带附件的邮件
支持在发送邮件时加入密送和抄送
支持消息会话
可以显示邮件列表
支持多种邮箱格式,例如maildir,mbox,MH和MMDF
支持至少20种语言
支持DSN(Delivery Status Notification,投递状态通知)
如何在Linux上安装Mutt
我们可以在Linux上非常容易的使用任意包安装器安装Mutt客户端,像下面这样。
apt-get install mutt (For Debian / Ubuntu based system)
yum install mutt (For RHEL / CentOS / Fedora based system)
配置文件
Mutt Email客户端的配置文件:
Main Configuration file:改变是全局的,会影响所有用户的mutt,你可以通过它的邮件配置文件”/etc/Muttrc”进行更改。
User Configuration file of Mutt:如果你想为特定用户定制Mutt,你可以通过设置~/.muttrc或者~/.mutt/muttrc做到这一点。
基本的mutt命令语法
mutt options recipient
用Mutt阅读邮件
要阅读当前系统登录用户的邮件,你只需要在终端运行”mutt“, 它将会加载当前用户的邮箱。
要阅读指定用户的邮件,你需要告诉程序读取哪一个邮件文件。举个例子,你(root用户)想看用户”John”的邮件,你需要通过”-f”选项指定它的邮件文件。
mutt -f /var/spool/mail/john
你也可以用”-R”选项来打开只读模式。
通过mutt发送邮件
在这个例子里,下面的命令将会发送一封测试邮件到john@tecmint.com。”-s”选项用于指定邮件的主题。
mutt -s "Test Email" john@tecmint.com
当你在终端里键入了上面的命令并回车后,他会打开一个确认收件人地址和主题的界面,这这里你可以修改收件人地址。
按t改变收件人地址
按c改变抄送地址
按a添加一个附件
按q退出界面
按y发送邮件
注意当你按了”y“界面下方将会显示发送状态。
添加抄送和密送
我们可以通过”-c”和”-b”选项添加抄送和密送。
mutt -s "Subject of mail" -c -b mail address of recipient
mutt -s “Test Email” -c tecmint.com@gmail.com -b root@server1.tecmint.com john@server1.tecmint.com
在这个例子里,用户root发送了一封邮件给john@server1.tecmint.com,抄送给了tecmint.com@gmail.com并且密送给了root@server1.tecmint.com。
发送带附件的邮件
我们可以通过”-a”选项来添加一个附件。
mutt -s "Subject of Mail" -a -c mail address of recipient
mutt -s "Site Backup" -a /backups/backup.tar -c tarunika@CentOS58server.example.com root@centos58server.example.com
在上面的截图里,你可以看到邮件的附件列表。
使用muttrc文件
如果我们想改变发送人的名字和地址,我们需要在指定的用户home目录下创建一个文件。
加入下面的行,保存退出。
set from = "user@domain.com"
set realname = "Realname of the user"
获取帮助
你可以通过”-h“选项获取”mutt“的帮助菜单。
[root@tecmint ~]# mutt -h
这就是mutt的命令了,阅读mutt的man page来获取更多mutt命令信息。
来源:极客范 作者:Boyd Wang