需求是把所有的日志中邮箱获取出来,根据指定关键字过滤,邮箱的格式是\txxx@xxx\t的格式,日志的存放是按照日期作为目录
#!/bin/bash logBasePath=@H_502_6@"@H_502_6@/data1/mailLog/app/kafka/@H_502_6@"; monthYearDay=`date -d @H_502_6@1 day ago@H_502_6@" +@H_502_6@%Y-%m-%d@H_502_6@`; #安卓每日邮箱个数 logPath=@H_502_6@${logBasePath}${monthYearDay}/api-mail-sina-com-cn.log@H_502_6@; tmpFile=@H_502_6@/tmp/${monthYearDay}.android.email.log@H_502_6@; echo @H_502_6@start android email...@H_502_6@cat $logPath|grep @H_502_6@'@H_502_6@2026078627@H_502_6@'|grep -oP @H_502_6@\\t[^\\]+@.*?\\t@H_502_6@sed @H_502_6@s/\\t//g@H_502_6@uniq|sort -u > $tmpFile; echo $tmpFile; androidEmailNum=`wc -l ${tmpFile}`; #IOS每日邮箱个数 tmpFile=@H_502_6@/tmp/${monthYearDay}.ios.email.log@H_502_6@start ios email...@H_502_6@2503566089@H_502_6@ $tmpFile; iosEmailNum=`l ${tmpFile}`; #安卓每日设备数 tmpFile=@H_502_6@/tmp/${monthYearDay}.android.device.log@H_502_6@start android device...@H_502_6@device_id=[^&\"]+@H_502_6@"| $tmpFile; androidDeviceNum=`l ${tmpFile}`; #ios每日设备数 tmpFile=@H_502_6@/tmp/${monthYearDay}.ios.device.log@H_502_6@start ios device...@H_502_6@ $tmpFile; iosDeviceNum=`l ${tmpFile}`; mailContent=@H_502_6@" Android每日邮箱账号活跃数:<br/><br/>${androidEmailNum}<br/><br/>IOS每日邮箱账号活跃数:<br/><br/>${iosEmailNum}<br/><br/> Android每日设备活跃数:<br/><br/>${androidDeviceNum}<br/><br/>IOS每日设备活跃数:<br/><br/>${iosDeviceNum} @H_502_6@" $mailContent; PHP /usr/local/sinamail/tools/new/sumMobileDevice/sumMobileDevice.PHP @H_502_6@${mailContent}@H_502_6@"