欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

邮件发送统计信息

程序员文章站 2022-04-06 11:36:43
#!/bin/bash #定义日志路径path=/usr/local/nginx/htdocs/log #生成日期date=`date -d yesterday "+%Y%m%d"` #文件1 file=nciic_check_results.log #文件2file1=id5_check_resu ......

#!/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