#!/usr/local/bin/perl use strict; use warnings; use File::Path; use POSIX qw(strftime); my $datetime; my $vhost; my $ip; my $uri; my $logfile; my $rlogfile; my $ulogfile; my $logd; my $rf = 0; while() { $datetime = strftime("%Y-%m-%d", localtime()); ($vhost, $ip, $uri) = split /\|\|/; $vhost =~ s/www.//; $logd = "/var/log/apache/$vhost/$datetime"; if (!-d $logd) { mkpath($logd); } if (-f "$logd/log") { $rf = exec("/bin/cat $logd/log | /usr/bin/grep $ip | /usr/bin/wc -l"); } print $rf; open LOGFILE, ">>$logd/log"; print LOGFILE "$vhost $ip $uri"; close(LOGFILE); } exit 1;