Linux下使用mail发送邮件

邮件常常是Linux下监控报警手段之一。Linux下的mail命令可以方便,快速的完成发送邮件。下面以CentOS为例

1、安装

[root@vm8028 ~]# mail
-bash: mail: command not found
[root@vm8028 ~]# yum install mailx
Loaded plugins: fastestmirror
Determining fastest mirrors
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
base | 3.7 kB :
extras | 3.4 kB :
extras/primary_db | kB :
updates | 3.4 kB :
updates/primary_db | 4.7 MB :
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mailx.x86_64 :12.4-.el6_6 will be installed
--> Finished Dependency Resolution Dependencies Resolved =============================================================================================================================================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================================================================================================================================
Installing:
mailx x86_64 12.4-.el6_6 base k Transaction Summary
=============================================================================================================================================================================================================================================
Install Package(s) Total download size: k
Installed size: k
Is this ok [y/N]: y
Downloading Packages:
mailx-12.4-.el6_6.x86_64.rpm | kB :
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : mailx-12.4-.el6_6.x86_64 /
Verifying : mailx-12.4-.el6_6.x86_64 / Installed:
mailx.x86_64 :12.4-.el6_6 Complete!
[root@vm8028 ~]# mail
No mail for root

2、配置
vi /etc/mail.rc   在文件尾加上如下配置  (注:因为163的设置相对简单些,以163邮箱为例,QQ邮箱等,其他邮箱因为安全等因素,需要设置的比较多,具体的可以搞下,本文不作重点。QQ邮箱也是可以的)

set from=xd502djj@.com
set smtp=smtp..com
set smtp-auth-user=xd502djj@.com
set smtp-auth-password=邮箱密码
set smtp-auth=login

3、发送邮件测试

[root@vm8028 ~]# echo "Content" | mail -s "Title" dongjunjie@cmcm.com
[root@vm8028 ~]#
[root@vm8028 ~]#

Linux下使用mail发送邮件

4、其他

mail命令 可以使用查看具体更多的使用方法

    mail --h

举例:

a、无邮件正文

# mail -s "Title"  280094177@qq.com

b、有邮件正文

#   mail -s "Tile"  280094177@qq.com </root/sms_out.txt

或者 cat /root/sms_out.txt  | mail -s "Tile"  280094177@qq.com

或者 echo “”Content“  |   mail -s "Tile"  280094177@qq.com

c 、带附件的邮件

mail -s "Tile"  280094177@qq.com  -a  /root/sms_out.txt

上一篇:实现长按删除QListWidget的Item


下一篇:C++运算符重载(友元函数方式)