侧边栏壁纸
博主头像
AllInOne博主等级

随风来,随风去

  • 累计撰写 45 篇文章
  • 累计创建 27 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Shell发送附件和表格(实战篇)

AllInOne
2024-04-21 / 0 评论 / 0 点赞 / 126 阅读 / 457 字
温馨提示:
点赞-关注-不迷路。

安装

直接安装

sudo yum install -y sendemail

安装包安装

#下载安装包
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
#创建目录
mkdir -p /usr/local/bin
#解压
tar zxf sendEmail-v1.56.tar.gz -C /usr/src/
#进入解压目录
cd /usr/src/sendEmail-v1.56/
#复制程序到指定目录
cp -a sendEmail /usr/local/bin/
#给执行权限
chmod +x /usr/local/bin/sendEmail
#安装组件
yum install perl-Net-SSLeay perl-IO-Socket-SSL -y

参数说明

-f 表示发送者的邮箱
-t 表示接收者的邮箱
-cc 表示抄送发给谁
-bcc 表示暗抄送给谁
-o message-content-type=html   邮件内容的格式,html表示它是html格式
-o message-charset=utf8        邮件内容编码
-s 表示SMTP服务器的域名或者ip
-u 表示邮件的主题
-xu 表示SMTP验证的用户名
-xp 表示SMTP验证的密码(注意,这个密码貌似有限制,例如我用d!5neyland就不能被正确识别)
-m 邮件的内容
-a 要发送的附件

实战

#!/bin/bash
#备份目录
BACKUP_DIR=/root/data
#备份文件名格式为"数据库名-日期-时间"
FILE_NAME=halobak-$(date +%F_%H-%M-%S).sql
mysqldump -h172.21.108.243 -uroot -pxxx -P3311  halodb > $BACKUP_DIR/$FILE_NAME


#收件箱
EMAIL_RECIVER=xxx@qq.com
#发送者邮箱
EMAIL_SENDER=xxx@qq.com
#邮箱用户名
EMAIL_USERNAME=xxx@qq.com
EMAIL_PASSWORD=xxx
#附件路径
FILE1_PATH=$BACKUP_DIR/$FILE_NAME
#smtp服务器地址(因为阿里云没有放开25端口)
EMAIL_SMTPHOST=smtp.qq.com:587
EMAIL_TITLE="halo数据备份"
EMAIL_CONTENT="备份成功"

# 表格内容
EMAIL_EXCEL="<table border=1>
<tr>
<th>邮箱表格模板</th>
</tr>
</table>"

sendEmail -f ${EMAIL_SENDER} -t ${EMAIL_RECIVER} -s ${EMAIL_SMTPHOST} -u ${EMAIL_TITLE} -xu ${EMAIL_USERNAME} -xp ${EMAIL_PASSWORD} -m ${EMAIL_EXCEL} ${EMAIL_CONTENT} -a ${FILE1_PATH} -o tls=yes -o message-charset=utf-8
0

评论区