postfix log简要整理
发布时间:2020-12-15 07:08:03 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/bin/bash#-------------------------------------------------------#TITLE:Postfix Mail Log Handle#AUTHOR:HankZhou#TIME:2013/07/17#VERSION:0.
|
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/bin/bash
#-------------------------------------------------------
#TITLE: Postfix Mail Log Handle
#AUTHOR: HankZhou
#TIME: 2013/07/17
#VERSION: 0.5V
#-------------------------------------------------------
#To determine whether a file exists
if [ ! -e $1 ]
then
printf "$1 No such file or directorynr"
exit 0
fi
dirName="maillog"$(date +%y%m%d%H%M%S)
#To determine whether a directory exists
if [ -d $dirName ]
then
printf "Folder already existsnr"
exit 0
fi
mkdir $dirName
#Sented File handling
cat $1 |
awk '{if(match($12,/^status=sent$/))
{mat=match($7,/[a-zA-Z0-9_]+@[a-zA-Z0-9_.]/);
lenMatch=length($7);
matched=substr($7,5,lenMatch-6);
timeOri=$1" "$2" "$3;
cmd="date ""timeOri"" "+%Y/%m/%d %T "";
cmd|getline time;
lenTime=length(time);
timeH=substr(time,lenTime-1);
print timeH","matched ",Message accepted"}}' |
awk 'BEGIN{FS=OFS=","}
{a[$2]++;a[$0]++;
if(a[$2]<2)
{print $0}}'
>./$dirName/sented.csv
#calculate number of lines
lines=$(awk '{b++;}END{print b}' ./$dirName/sented.csv)
printf "**nrSented mail has been generated.nr"
printf "Totle of $lines linesnr"
#Error File handling
cat $1 |
awk '{if(match($12,/^status=(deferred|bounced|expired)$/))
{mat=match($7,lenMatch-6);
timeOri=$1" "$2" "$3;
cmd="date -d ""timeOri"" "+%Y/%m/%d %T "";
cmd|getline time;
lenTime=length(time);
timeH=substr(time,lenTime-1);
printf timeH","matched",";
printf substr($12,8);
for (i=13;i<=NF;i++){printf $i" "};
print "n";}}' |
awk 'BEGIN{FS=OFS=","}
{a[$2]++;a[$0]++;
if(a[$2]<2)
{print $0}}'
>./$dirName/ErrorMail.csv
lines=$(awk '{b++;}END{print b}' ./$dirName/ErrorMail.csv)
printf "**nrError mail has been generated.nr"
printf "Totle of $lines linesnr"
以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
