邮件发送统计信息

#!/bin/bash

#定义日志路径
path=/usr/local/nginx/htdocs/log

#生成日期
date=`date -d yesterday "+%Y%m%d"`

#文件1

file=nciic_check_results.log

#文件2
file1=id5_check_results.log

#类型1

type='",2:0}'

#类型2
type1='",2:true}'

#定义邮件地址,多个邮件地址逗号分隔

Email_ok=邮件地址1,邮件地址2

#定义表格样式

table='<html><body><table border="1" cellspacing="0" bordercolor="#000000" style="width:400px;bordera-collapse:collapse;align:center"><tr><td>Type</td><td>总计</td><td>Success</td><td>Fail</td></tr>'
table="$table<caption>实名认证统计信息</caption>"

#判断两个文件是否存在

if [[ -f $path/$date/$file && -f $path/$date/$file1 ]];then

  #免费成功数
  success=`grep -r $type $path/$date/$file |wc -l `

  #免费失败数
  failue=`grep -v $type $path/$date/$file |wc -l `

  #免费总数
  all=`cat $path/$date/$file |wc -l`

  #收费成功数
  success1=`grep -r $type1 $path/$date/$file1 |wc -l `

  #收费失败数
  failue1=`grep -v $type1 $path/$date/$file1 |wc -l `

  #收费总数
  all1=`cat $path/$date/$file1 |wc -l`

  #追加数据

  table="$table<tr><td>收费</td><td>$all1</td><td>$success1</td><td>$failue1</td></tr>"
  table="$table<tr><td>免费</td><td>$all</td><td>$success</td><td>$failue</td></tr>"

  #判断两组数据是否匹配

  if [[ $all != `expr $success + $failue` || $all1 != `expr $success1 + $failue1` ]]; then
    table="$table<tr><td col=4>数据不匹配<td></tr>"
  fi

  #完成table样式
  table="$table</table></body></html>"

  #以html格式发送数据
  echo $table | mailx -v -s "$(echo -e "$date 统计信息\nContent-Type: text/html")" $Email_ok
else
  echo "$file 或 $file1 文件不存在,请查看原因" | mailx -v -s " $date 统计信息" $Email_failue
fi

posted on 2018-06-25 16:00  我以前不是胖子  阅读(226)  评论(0编辑  收藏  举报

导航