zoukankan      html  css  js  c++  java
  • [Linux] 获取出日志中的邮箱shell

    需求是把所有的日志中邮箱获取出来,根据指定关键字过滤,邮箱的格式是 xxx@xxx 的格式,日志的存放是按照日期作为目录

    #!/bin/bash
    logBasePath="/data1/mailLog/app/kafka/";
    monthYearDay=`date -d "1 day ago" +"%Y-%m-%d"`;
    
    #安卓每日邮箱个数
    logPath="${logBasePath}${monthYearDay}/api-mail-sina-com-cn.log";
    tmpFile="/tmp/${monthYearDay}.android.email.log";
    echo "start android email...";
    cat $logPath|grep '2026078627'|grep -oP '\t[^\]+@.*?\t'|sed 's/\t//g'|uniq|sort -u > $tmpFile;
    echo $tmpFile;
    androidEmailNum=`wc -l ${tmpFile}`;
    
    #IOS每日邮箱个数
    tmpFile="/tmp/${monthYearDay}.ios.email.log";
    echo "start ios email...";
    cat $logPath|grep '2503566089'|grep -oP '\t[^\]+@.*?\t'|sed 's/\t//g'|uniq|sort -u > $tmpFile;
    echo $tmpFile;
    iosEmailNum=`wc -l ${tmpFile}`;
    
    #安卓每日设备数
    tmpFile="/tmp/${monthYearDay}.android.device.log";
    echo "start android device...";
    cat $logPath|grep '2026078627'|grep -oP "device_id=[^&"]+"|uniq|sort -u > $tmpFile;
    echo $tmpFile;
    androidDeviceNum=`wc -l ${tmpFile}`;
    
    #ios每日设备数
    tmpFile="/tmp/${monthYearDay}.ios.device.log";
    echo "start ios device...";
    cat $logPath|grep '2503566089'|grep -oP "device_id=[^&"]+"|uniq|sort -u > $tmpFile;
    echo $tmpFile;
    iosDeviceNum=`wc -l ${tmpFile}`;
    
    mailContent="
    Android每日邮箱账号活跃数:<br/><br/>${androidEmailNum}<br/><br/>IOS每日邮箱账号活跃数:<br/><br/>${iosEmailNum}<br/><br/>
    Android每日设备活跃数:<br/><br/>${androidDeviceNum}<br/><br/>IOS每日设备活跃数:<br/><br/>${iosDeviceNum}
    "
    echo $mailContent;
    php /usr/local/sinamail/tools/new/sumMobileDevice/sumMobileDevice.php  "${mailContent}"
  • 相关阅读:
    Request.ServerVariables
    asp.net 枚举
    MSSQL批量替换语句 在SQL SERVER中批量修改替换数据
    由于 ASP.NET 进程标识对全局程序集缓存没有读权限,因此未能执行请求
    mongodb 下载地址,mongodb.dll 下载
    mongodb 常用操作(转)
    mssql 列出数据库中的所有表
    jpg图片在火狐中和ie中格式区别
    Ndo 新版本发布
    消息总线设计系列之 调停者模式
  • 原文地址:https://www.cnblogs.com/taoshihan/p/11959991.html
Copyright © 2011-2022 走看看