Squid日志拆分shell
vi split_log.sh#!/bin/sh count=$# if [ $count -le 0 ] the...
扫描右侧二维码阅读全文
09
2008/09

Squid日志拆分shell

vi split_log.sh

#!/bin/sh
count=$#
if [ $count -le 0 ]
then
echo "please input date"
exit
fi
filename="access.log"

cd ~weblog/

if [ ! -d ./$1 ]
then
mkdir ./$1
fi

cd ./$1

rm * -f

zcat ../$filename.$1.gz | gawk -F '[ /]' ' {dom=$11;print $0 >> dom}'

for file in ./*
do
if [ -s $file ]
then
gzip $file
else
rm $file -f
fi
done

参数使用的是长格式日期
例如:
./split_log.sh 20080909

在产生的日志中会出现一些莫名其妙的域名日志,这是由于有人非法使用squid做代理造成的。这样的情况在配置禁止非法代理也一样会发生。

Last modification:November 26th, 2018 at 04:16 pm
If you think my article is useful to you, please feel free to appreciate

4 comments

  1. ready

    这个脚本当初在写得时候没有考虑通用化,本来就是自己用的。呵呵

    贴出来只是给大家一个参考。

    如果要使用还是要根据自己的需要进行修改的。

  2. Martian Guo

    cd ./$1

    rm * -f

    写成
    cd ./$1
    if [ $? == 0 ];then
    rm * -f
    fi

    还好还好

  3. Michael Field

    还好啦 已经被限制在weblog的家目录啦,这里可以再加一个日期的目录的if判断

  4. joecen

    你这脚本太危险了。$1如果不是你要的那个目录,就完蛋了。

Leave a Comment