1.安装mailutils和heirloom-mailx
apt-get install mailutils
apt-get install heirloom-mailx
2.配置文件
vi /etc/s-nail.rc
在文件最后添加以下配置
set from=xxx@ #设置发送邮箱
set smtp=:25 #设置smtp服务器和端口
set smtp-auth-user=cm@ #设置用户名,记得加域名啊
set smtp-auth-password=xxxxx#邮箱密码,不是什么授权码。阿里企业邮箱根本没有授权码
set smtp-auth=login #认证方式
3.测试
echo '内容' | mail -s "主题" xxx@
mail -s "主题" xxx@ <<< '内容'
发送邮件
用一行命令发送邮件给邮箱example@(改成你自己要发送的邮箱)发封邮件。邮件主题为Test email from ubuntu server!,内容为Here is the message body.。
mail -s "Test email from ubuntu server!" example@ <<< 'Here is the message body.'
1
echo 'Here is the message body.' | mail -s "Test email from ubuntu server!" example@
1
以上两条命令可以得到同样的效果。其中,-s 参数指定邮件的主题。
运行以上命令后,去邮箱(example@)里查看是否收到邮件。如果收件箱里没有,可能在垃圾邮件里。
使用mail的命令提示发送邮件
给peter@ 发送邮件,并抄送给john@。邮件主题为Test Subject,内容为Merry christmas
mail -s 'Test Subject' peter@
1
输入该命令后回车,提示Cc:,这时输入抄送邮件地址john@,然后回车。
继续输入邮件正文内容Merry christmas,正文输入结束后,按Ctrl-D 结束输入并发送邮件。
从文件中读取邮件内容并发送
给邮箱example@发送邮件,邮件主题为Text message,邮件内容为/home/user/message.txt中的内容 。
mail -s 'Text message' example@ < /home/user/message.txt
1抄送与密件抄送
给user1@发送邮件 ,并抄送给user2@,并密件抄送给user3@。
mail -s 'Subject' user1@ -c user2@ -b user3@ < message.txt
1
-c表示抄送 ,-b表示密件抄送 。-c: carbon copy, -b: blind carbon copy。
[貌似没有这两个参数了。]
给多个邮箱发送邮件
mail -s 'Subject' user1@,user2@,user3@ < message.txt
1指定发件人姓名和地址
echo "This is the message body" | mail -s "subject" user@ -aFrom:sender@
1
使用-a参数追加邮件头信息,用来指定发件人姓名和地址。
或者
echo "This is the message body" | mail -s "subject" user@ -aFrom:John\<john@\>
1给本机的其他用户发送邮件
mail -s "hello, this is a test!" username
1
mail -s "hello, this is a test!" username@ubuntu
1
这两种方法等价,第二种中的ubuntu是当前系统的主机名(hostname),见安装部分的最后一张图,系统邮件名默认的是主机名,也是ubuntu。
添加附件
echo "This is the message body" | mail -s "subject" user@ -a /path/to/attached_file
1
使用-A参数为邮件添加附件。
或者使用另一个命令行工具–Mutt。
-> 安装
sudo apt-get install mutt
1
-> 使用
发送简单邮件
echo "This is a mutt test" | mutt -s "This is mutts subject" example@
1
发送附件邮件:
mutt -s "Subject" -a /path/to/file_to_attached -- example@ < /home/user/mailcontent.txt
1
-a参数添加附件(attach),后面跟附件所在的路径;mailcontent.txt是邮件正文内容。
注意:附件文件和收件人之间需要使用–分隔。
shell脚本发送邮件
写一个shell脚本将硬盘使用情况发送到邮箱。使用du -sh查看硬盘使用情况。
#!/bin/bash #filename: report_disk_usage_to_email.shdu -sh | mail -s "disk usage report" user@
123
在第一部分–[安装mailutils]中的第三个图中可以看到,我的是ubuntu。
保存后退出编辑,然后运行该脚本,命令为:sh report_disk_usage_to_email.sh。
查看邮件
查看邮件直接在命令行里输入mail就列出了所有的邮件状态, 如图所示。如果没有未读邮件,则返回No mail for user。
在第三行显示有7封邮件,其中3封未读。
第二列是邮件编号,最后一列是邮件主题,中间是收件日期。
最后一行?
提示符表示等待输入命令。
输入邮件编号,回车后就可以打开该邮件进行阅读。
输入z
回车后退后邮件列表。
输入q
回车后退出。