1.主要用awk实现两个文件的处理
number=0
if [ -f level_$number.`date +%Y%m%d` ]; then
awk -F"|" 'NR == FNR { a[$2] = $10 } /
NR > FNR { if (a[$2]=="") print $2"|"$2; /
else { a[$2] = $10 - a[$2]; print $2"|"a[$2]; } } '/
level_$number.`date +%Y%m%d -d "-1 day"` level_$number.`date +%Y%m%d`| sort > today_yesterday_$number.tmp
awk -F"|" 'NR == FNR { a[$2] = $10 } /
NR > FNR { if (a[$2]=="") print $2"|"$2; /
else { a[$2] = $10 - a[$2]; print $2"|"a[$2]; } } '/
level_$number.`date +%Y%m%d -d "-2 day"` level_$number.`date +%Y%m%d -d "-1 day"` | sort > yesterday_other_$number.
tmp
comm -23 today_yesterday_$number.tmp yesterday_other_$number.tmp > `date +%Y%m%d`_$number.tmp
awk -F"|" 'NR == FNR { a[$1] = $2 } /
NR > FNR { if (a[$2] != "") print $0;}' /
`date +%Y%m%d`_$number.tmp level_$number.`date +%Y%m%d` > result_$number
rm today_yesterday_$number.tmp
rm yesterday_other_$number.tmp
rm `date +%Y%m%d`_$number.tmp
fi
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
本文介绍了一种利用awk命令处理两个不同日期的日志文件的方法,通过对比这些文件来找出变化的数据,并将结果输出到新的文件中。具体步骤包括读取前一天和前两天的日志文件,进行数据对比和差异分析。
33万+

被折叠的 条评论
为什么被折叠?



