1、安装sendEmail工具:
操作见网址:https://blog.csdn.net/rheostat/article/details/7975198
2、查看sendEmail使用说明:
(1)查看sendEmail帮助文档:
/usr/bin/sendemail --help
(2)sendEmail使用基本参数:
/usr/bin/sendemail
-f 619341326@qq.com 发件人邮箱地址
-t test@qq.com 收件人邮箱
-s smtp.qq.com 发件人邮箱的smtp服务器
-u '标题' 邮件的主题
-o message-content-type=html 邮件内容的格式为html,也可以是text
-o message-charset=utf8 邮件内容编码
-xu 619341326@qq.com 发件人账号
-xp 123456 发件人密码
-m '邮件内容' 邮件的内容
3、发送邮件命令demo:
sendemail -f 619341326@qq.com -t "test@qq.com" -s smtp.qq.com -u '测试主题' -o message-content-type=html -o message-charset=utf8 -xu 619341326@qq.com -xp 123456 -m "邮件内容"
注意:-xp的密码不是邮箱登录密码,是发送邮箱开启POP3/SMTP后生成的授权密码。
4、shell脚本发送邮件代码如下:
(1)配置文件:
sendEmailAddr=/usr/bin/sendEmail
sendEmailFromSmtp=smtp.qq.com
semdEmailFrom=10234354360282@qq.com
sendEmailFromPassword=vrirersdsdfselllllllll
semdEmailTo=115656868874@qq.com,sjz_wertil@126.com
sendEmailTitle=测试邮件主题
sendEmailContent=测试邮件内容
(2)代码:
注意:不同linux设备的sh路径可能不同,需通过which sh查看sh的绝对路径修改即可。
#!/bin/sh
#db_backups_conf.txt文件路径
db_backups_conf="/wocloud/shell/send_email_conf.txt"
#判断文件是否存在
if [ -f "${db_backups_conf}" ];then
echo $(date +'%Y-%m-%d %H:%M:%S')" 发送文件配置信息文件存在"
#获取等号前内容,作为map中的Key值
dbArrOne=($(awk -F'[=]' '{print $1}' ${db_backups_conf} ))
#获取等号后内容,作为map中的value值
dbArrTwo=($(awk -F'[=]' '{print $2}' ${db_backups_conf}))
#创建一个空map
declare -A map=()
#通过循环,将db_backups_conf配置文件中的信息存储在map中
for((i=0;i
(3)配置参数说明:
sendEmailAddr=发送邮件工具sendEmail的绝对路径
sendEmailFromSmtp=邮件发送人对应服务器地址,本人使用QQ邮箱发送:smtp.qq.com
semdEmailFrom=邮件发送人邮箱地址
sendEmailFromPassword=邮件发送人邮箱授权码
semdEmailTo=邮件接收人地址,多个邮箱地址用英文逗号分隔
sendEmailTitle=邮件主题
sendEmailContent=邮件内容
(4)使用注意事项:
使用注意事项:
1、默认的是.sh、.txt文件都要放在/woclod/shell脚本下,如果放置的路径变了,需要修改.sh中读取.txt配置文件的路径