发送统计邮件shell脚本
#!/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