linux服务器通过mailx邮件发送附件到指定邮箱
shell脚本查询数据库
#!/bin/bash
HOSTNAME="数据库IP"
PORT="端口"
USERNAME="用户"
PASSWORD="密码"
DBNAME="库名"
select_sql="SELECT
DATE_FORMAT(t.orderdate,'%Y-%m-%d') as '日期',
t.store_name as '店铺名称',
t.store_id,
(case when t.channel='1' then '线下' else '线上' end) as '渠道',
t.type_name as '商品品类',
t.product_name as '商品',
t.brand as '品牌',
count(t.order_id) as '订单数',
sum(t.units * t.price) as '订单总金额'
FROM mk_mrp_order t
where DATE_FORMAT(t.orderdate,'%Y-%m-%d')=date_format(DATE_SUB(CURDATE(),INTERVAL 1 day),'%Y-%m-%d')
group by
DATE_FORMAT(t.orderdate,'%Y-%m-%d'),
t.store_id,
t.store_name,
t.channel,
t.type_id,
t.type_name,
t.product_id,
t.product_name,
t.brand
order by DATE_FORMAT(t.orderdate,'%Y-%m-%d') desc;"
mysql -h${HOSTNAME} -p${PASSWORD} -u${USERNAME} -P${PORT} -D ${DBNAME} -e "${select_sql}"
#!/bin/sh
date=`date +%F`
source /root/scripts/prd09.sh > /root/scripts/test-$date.xls #调用上面的数据库脚本,将查询出的数据重定向到xls表
iconv -f UTF-8 -t GBK /root/scripts/test-$date.xls -o /root/scripts/$date.xls #将上面的xls表转成GBK编码
echo -e "Dear all:\n 附件为$date营销数据,请查阅" | mailx -s "$date营销数据" -a /root/scripts/$date.xls zouhong@biiby.com liutao@biiby.com # -e "Dear all:\n 附件为$date营销数据,请查阅" 此段为:邮件内容 -e和-n为换行
mailx -s "$date营销数据" #邮件标题
-a /root/scripts/$date.xls #附件为转换编码后的xls表
zouhong@biiby.com liutao@biiby.com #发送给外部需要查看数据的邮箱 此处需要将邮箱域名添加到白名单,可以先发送到qq邮箱或者腾讯企业邮箱,邮箱首页有自助查询,可看到拦截的邮件,直接添加到白名单即可
50 08 * * * runuser -c /root/scripts/2.sh system >/dev/null 2>&1 #每天早上8点50发送邮件 runuser -c 定时执行的脚本 system为指定发送邮件的账户为system
#!/bin/sh
date=`date +%F`
echo -e "Dear All:\n 以下为协议监控前10条数据,请查阅.\n `cat /home/zabbix/datadir/协议监控.${date}.txt`\n\n\n监控SQL语句如下:\nSELECT id FROM protocol.t_protocol WHERE STATUS IN(0,3) AND retry_times = 5 limit 10;"| mailx -s "[异常]协议监控" liutao@zhuifintech.com
linux服务器通过mailx邮件发送附件到指定邮箱的更多相关文章
- C#邮件发送(最坑爹的邮箱-QQ邮箱)---转发(SmallFlyElephant)
C#邮件发送(最坑爹的邮箱-QQ邮箱) 最近工作挺清闲的,有空的时候陪妹子出去玩玩,自己看看小说,看看电影,日子过的挺欢乐的,这个星期幡然悔悟,代码才是我的最爱,做点小东西,就写个邮件发送程序.说的邮 ...
- Java远程调用邮件服务器,实现邮件发送
写这篇文章的背景是公司Android客户端需要实现一个功能,实现类似于密码找回或者用户注册完发送一个邮件给用户的功能,当然这些逻辑客户端只负责请求自己的服务端,自己的服务端再去请求邮件服务器. 邮件服 ...
- 阿里云CentOS Linux服务器上搭建邮件服务器遇到的问题
参考文章: 阿里云CentOS Linux服务器上用postfix搭建邮件服务器 Linux系统下邮件服务器的搭建(Postfix+Dovecot) 本来想自己搭建邮件服务器,但是看到一篇资料表示阿里 ...
- C#邮件发送(最坑爹的邮箱-QQ邮箱)
最近工作挺清闲的,有空的时候陪妹子出去玩玩,自己看看小说,看看电影,日子过的挺欢乐的,这个星期幡然悔悟,代码才是我的最爱,做点小东西,就写个邮件发送程序.说的邮件发送相信工作过基本上都会用到过,用户注 ...
- java邮件发送(以163邮箱为例)
1.首先应该开通163邮箱的smtp和pop3,得到授权码 2.其次建立一个web项目,否则需要倒jar包mail.jar 3.创建一个类 4.注意:邮件内容必须为正式话语,否则系统会认为是垃圾邮件而 ...
- python 定时爬取内容并发送报告到指定邮箱
import requests import smtplib import schedule import time from bs4 import BeautifulSoup from email. ...
- shell:实现linux服务器资源监控并发送告警邮件
1.安装方式 wget http://10.8.225.126/wsmonitor/install.sh;sh install.sh test@test.com 2.install.sh #!/bin ...
- 将mysql数据库的数据导出做成excl表格通过邮件发送附件发给指定人
mysql数据库的数据导出成excl表 方法一: mysql -uroot -p123456 -e “select *.* from 表 into outfile ‘文件路径.xls’into out ...
- 登陆Linux服务器时触发邮件提醒
目前,客户只能在发现数据或者虚拟机被恶意侵入或者用户的误操作导致了数据的丢失之后,采取善后的手段,但是并没法做到提前的预警.那么通过 PAM 模块,就可以实现用户登录及获取root 权限时,通过邮件的 ...
随机推荐
- SIP信令跟踪工具HOMER
概述 HOMER是一款100%开源的针对SIP/VOIP/RTC的抓包工具和监控工具. HOMER是一款强大的.运营商级.可扩展的数据包和事件捕获系统,是基于HEP/EEP协议的VoIP/RTC监控应 ...
- PyTorch 广播机制
PyTorch 广播机制 定义 PyTorch的tensor参数可以自动扩展其大小.一般的是小一点的会变大,来满足运算需求. 规则 满足一下情况的tensor是可以广播的. 至少有一个维度 两个ten ...
- 清除安装的Rancher、K8s
#清除主机的所有容器.挂载.镜像(慎用) docker stop $(docker ps -aq) docker system prune -f docker volume rm $(docker v ...
- 如何使用 pyqt 实现 Groove 音乐播放器
前言 Win10 自带了一款很好用的音乐播放器 -- Groove 音乐,但是只能支持本地音乐的播放.2020年3月底到4月底,自己一直在学习 PyQt5,然后从 2020年5月开始,着手使用 PyQ ...
- ghostnet论文解析:ghost
创建日期: 2020-03-02 17:02:54 简介: GhostNet是2020CVPR录用的一篇对卷积操作进行改进的论文.文章的核心内容是Ghost模块(Ghost Module),可以用来替 ...
- python入门基础知识二(字符串的常用操作方法)
下标/索引: a = "I'm interested in Python." print(a[4]) i # 英文的字符串每一个下标/索引对应一个字母(含标点) a = '我喜欢p ...
- 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)
电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 目录 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 写在前面 正文 电机噪声 谐波的产生 什么 ...
- Base64隐写
0x00: 前言 Base64编码的作用: 将一些特殊的字符转换成常见的字符.特殊的字符可能是不可见字符或者是大于ascii码127的,将其变成常见的字符(在base64中为a~z A~Z 0~9 + ...
- 98. 验证二叉搜索树 前序遍历解法以及后续遍历解法(go语言)
leetcode题目 98. 验证二叉搜索树 前序遍历 最简洁的答案版本,由于先判断的是根节点,所以直接判断当前root的值v,是否满足大于左子树最大,小于右子树最小,然后再遍历左子树,右子树是否是这 ...
- Node.js + TypeScript + ESM +HotReload ( TypeScript 类型的 Node.js 项目从 CommJS 转为 ESM 的步骤)
当前 Node.js 版本:v16.14.0 当前 TypeScript 版本:^4.6.3 步骤 安装必要的依赖 yarn add -D typescript ts-node @tsconfig/n ...