软讯网络 > 操作系统 > Windows98/ME > 自动ftp后处理web日志-awstats
【标 题】:自动ftp后处理web日志-awstats
【关键字】:
ftp,web,-awstats
【来 源】:http://www.cublog.cn/u/11025/showart.php?id=197565
自动ftp后处理web日志-awstats
下面的shell是能实现:自动ftp下载日志,修改配置文件,分析web日志,最后加入fcrontab-----25 8 * * * /usr/local/apache2/htdocs/getlog
#!/bin/sh
hmjlog=hmj.log.$(date +%Y%m%d)
cd /usr/local/apache2/htdocs/
ftp -n<open 192.168.1.231
user admin 508956
passive
prompt off
cd logs/hmj/
get $hmjlog
close
bye
!
get_mon_days()
{
Y=`expr substr $1 1 4`
M=`expr substr $1 5 2`
r1=`expr $Y \% 4`
r2=`expr $Y \% 100`
r3=`expr $Y \% 400`
case $M in
01|03|05|07|08|10|12) days=31;;
04|06|09|11) days=30;;
esac
if [ $M -eq 02 ]
then
if [ $r1 -eq 0 -a $r2 -ne 0 -o $r3 -eq 0 ]
then
days=29
else
days=28
fi
fi
echo $days
}
get_before_date()
{
Y=`expr substr $1 1 4`
M=`expr substr $1 5 2`
D=`expr substr $1 7 2`
YY=`expr $Y - 1`
MM=`expr $M - 1`
DD=`expr $D - 1`
MM=`printf "%02d" $MM`
DD=`printf "%02d" $DD`
dd=$Y$MM
dad=`get_mon_days $dd`
be_date=$Y$M$DD
if [ $D -eq 01 ]
then
if [ $M -ne 01 ]
then
be_date=$Y$MM$dad
fi
if [ $M -eq 01 ]
then
be_date=$YY"1231"
fi
fi
echo $be_date
}
before_date=`get_before_date $(date +%Y%m%d)`
cd /etc/awstats/
sed "s/$before_date/$(date +%Y%m%d)/g" awstats.www.huimaijia.com.conf > awstats.www.huimaijia.com.conf.new
cp awstats.www.huimaijia.com.conf.new awstats.www.huimaijia.com.conf
chmod 755 awstats.www.huimaijia.com.conf
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=www.huimaijia.com -update
/usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=www.huimaijia.com -lang=cn -dir=/usr/local/apache2/htdocs/huimaijia/ -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
chmod 755 -R /usr/local/apache2/htdocs/db/
chmod 755 -R /usr/local/apache2/htdocs/huimaijia