#!/bin/bash
#作者:Presley
#时间:2018.07.16
#监控阿里云aaa库的py_weixin_product_close_rating_info 和 py_weixin_product_open_rating_info两个表当天记录条数和前一天记录条数
source /etc/profile #加载系统环境变量
source ~/.bash_profile #加载用户环境变量
set -o nounset #引用未初始化变量时退出

user="aaa"
port="3306"
password="aaa"
database="aaa"
today="$(date +%Y-%m-%d)"
yesterday="$(date +%Y-%m-%d --date="-1 day")"
host="aaa"
send_mail_name=("lipingchang@pystandard.com" "weijiyao@pystandard.com" "songchuwen@pystandard.com" "linfumei@pystandard.com" "denglei@pystandard.com")
#表py_weixin_product_close_rating_info当天数据条数sql
sql_tableclose_today_count="select count(*) from py_weixin_product_close_rating_info where report_date='${today}';"
#表py_weixin_product_close_rating_info前一天数据条数sql
sql_tableclose_yesterday_count="select count(*) from py_weixin_product_close_rating_info where report_date='${yesterday}';"

#表py_weixin_product_open_rating_info当天数据条数统计sql
sql_tableopen_today_count="select count(*) from py_weixin_product_open_rating_info where report_date='${today}';"
#表py_weixin_product_open_rating_info前一天数据统计条数sql
sql_tableopen_yesterday_count="select count(*) from py_weixin_product_open_rating_info where report_date='${yesterday}';"

mysqlconn="/application/mysql/bin/mysql -u${user} -p${password} -h${host} -P${port} -D${database} -e"

#将当天和前一天的记录条数统计
num_close_today=$(${mysqlconn} "${sql_tableclose_today_count}" 2>/dev/null | sed '1d')
num_close_yesterday=$(${mysqlconn} "${sql_tableclose_yesterday_count}" 2>/dev/null | sed '1d')

#将当天和前一天的记录条数统计
num_open_today=$(${mysqlconn} "${sql_tableopen_today_count}" 2>/dev/null | sed '1d')
num_open_yesterday=$(${mysqlconn} "${sql_tableopen_yesterday_count}" 2>/dev/null | sed '1d')

function send_mail()
{
echo "1、封闭式表:
${today}日 统计记录条数为: ${num_close_today} 条;
${yesterday}日 统计记录条数为: ${num_close_yesterday} 条。
2、开放式表:
${today}日 统计记录条数为: ${num_open_today} 条;
${yesterday}日 统计记录条数为: ${num_open_yesterday} 条。" | mail -s "表记录统计结果" $1

}

#发送邮件
for name in ${send_mail_name[@]}
do
send_mail $name
done

发送统计邮件shell脚本的更多相关文章

  1. zabbix 4.2 发送警告邮件Python脚本

    #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysimport getoptimport smtplibfrom email.MIMETe ...

  2. 【python】脚本连续发送QQ邮件

    今天习得用python写一个连续发送QQ邮件的脚本,经过测试,成功给国内外的服务器发送邮件,包括QQ邮箱.163邮箱.google邮箱,香港科技大学的邮箱和爱丁堡大学的邮箱.一下逐步解答相关技巧. 首 ...

  3. shell脚本安装部署反向代理 监控进程 计划任务

    1.编写脚本自动部署反向代理.web.nfs: 要求: I.部署nginx反向代理三个web服务,调度算法使用加权轮询: 反向代理服务器脚本配置脚本 #!/bin/bash #安装eple和nginx ...

  4. zabbix邮件告警之 通过shell脚本发送告警

    说明:本文讲如何通过shell脚本实现zabbix发送告警邮件,共有5步1.设置mailx账号:是配置mailx的发信账号2.zabbix服务器端编写邮件发送脚本:是增加zabbix的告警方式,增加通 ...

  5. [linux] shell脚本编程-统计日志文件中的设备号发通知邮件

    1.日志文件列表 比如:/data1/logs/2019/08/15/ 10.1.1.1.log.gz 10.1.1.2.log.gz 2.统计日志中的某关键字shell脚本 zcat *.gz|gr ...

  6. Git学习-->如何通过Shell脚本实现 监控Gitlab备份整个过程并且通过邮件通知得到备份结果?

    一.背景 Git学习–>如何通过Shell脚本自动定时将Gitlab备份文件复制到远程服务器? http://blog.csdn.net/ouyang_peng/article/details/ ...

  7. shell脚本编程学习笔记(三)编写邮件报警脚本

    一.shell编写邮件报警脚本 1.POSTFIX邮件服务器准备 a.首先卸载服务器上自带的sendmail rpm -qa sendmail* //查看安装的sendmail rpm -e send ...

  8. shell脚本实现网站日志分析统计

    如何用shell脚本分析与统计每天的访问日志,并发送到电子邮箱,以方便每天了解网站情况.今天脚本小编为大家介绍一款不错的shell脚本,可以实现如上功能. 本脚本统计了:1.总访问量2.总带宽3.独立 ...

  9. 利用shell脚本统计文件中出现次数最多的IP

    比如有如下文件test.txt 1  134.102.173.43 2  134.102.173.43 3  134.102.171.42 4  134.102.170.9 要统计出现次数最多的IP可 ...

随机推荐

  1. 用Python建设企业认证和权限控制平台

    目前大家对Python的了解更多来源是数据分析.AI.运维工具开发,在行业中使用Python进行web开发,同样也是非常受欢迎的,例如:FaceBook,豆瓣,知乎,饿了么等等,本文主要是介绍是利用P ...

  2. Python Django性能测试与优化指南

    摘要:本文通过一个简单的实例一步一步引导读者对其进行全方位的性能优化.以下是译文. 唐纳德·克努特(Donald Knuth)曾经说过:“不成熟的优化方案是万恶之源.”然而,任何一个承受高负载的成熟项 ...

  3. 【BZOJ1053】[HAOI2007]反素数(搜索)

    [BZOJ1053][HAOI2007]反素数(搜索) 题面 BZOJ 洛谷 题解 大力猜一下用不了几个质因子,那么随便爆搜一下就好了. #include<iostream> #inclu ...

  4. 40+ 个非常有用的 Oracle 查询语句

    40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧! 日期/时间 ...

  5. Nginx反向代理2--配置文件配置

    2.1Nginx的反向代理 什么是正向代理? 1.2   使用nginx实现反向代理 Nginx只做请求的转发,后台有多个http服务器提供服务,nginx的功能就是把请求转发给后面的服务器,决定把请 ...

  6. Kafka 0.8 Consumer设计解析

    摘要 本文主要介绍了Kafka High Level Consumer,Consumer Group,Consumer Rebalance,Low Level Consumer实现的语义,以及适用场景 ...

  7. Spark记录-Scala集合

    Scala列表 Scala列表与数组非常相似,列表的所有元素都具有相同的类型,但有两个重要的区别. 首先,列表是不可变的,列表的元素不能通过赋值来更改. 其次,列表表示一个链表,而数组是平的. 具有类 ...

  8. SQL记录-PLSQL-DBMS输出

    PL/SQL DBMS输出   DBMS_OUTPUT是一个内置的软件包,能够显示输出显示调试信息,并从PL/ SQL块,子程序,包和触发器发送消息.我们已经使用这个包在我们所有的教程中. 让我们来看 ...

  9. Excel VBA保护工作表

    '设定可编辑区域 ActiveSheet.Protection.AllowEditRanges.Add Title:="区域1", Range:=Range("E5:H1 ...

  10. 从字节码的角度看Java内部类与外部类的互相访问

    Java中non-static内部类为何可以访问外部类的变量?Java中外部类又为何可以访问内部类的private变量?这两个问题困扰过我一段时间,查了一些网上的答案,大多从“闭包”概念入手,理解起来 ...