简单的实现Linux下使用利用本地邮箱或外部邮箱服务器发送,常用于服务器监控报警日志发送归档等。

操作步骤:

1.安装

yum install mailx -y

2.更改配置

编辑 vi /etc/mail.rc在最后一行添加如下信息:

set from=test@163.com

###此处设置发件人的信息

set smtp=smtp.163.com

###此处配置邮件服务地址,因为邮箱是163的,所以此处配置为smtp.163.com

set smtp-auth-user=test@163.com

###此处配置发件人邮箱地址

set smtp-auth-password=abc

###切记此处配置abc是客户端授权码,不是发件人邮箱地址密码

set smtp-auth=login

###邮件默认认证方式

3.测试发送

echo “测试内容”|mail -s “测试邮件” xx@163.com

4.编写脚本

#!/bin/bash

help(){
   echo "eg: $0 [Subject] [address] [content_file] [file]"
   echo ""
   exit 1
}
if [ ! -n "$1" ] ; then
    help
fi
cDate=`date +%Y%m%d`
if [ ! -n "$2" ] ; then
    help
else
    mail_to=$2
    echo "      Send Mail to ${mail_to}"
fi
if [ ! -n "$4" ] ; then
    mail -s $1 ${mail_to}<$3
else
    mail -s $1 -a $4 ${mail_to}<$3
fi

5.使用方法:

./sendmail.sh 收件人 收件人邮箱 内容(文件,如:1.txt)