设为首页 加入收藏

TOP

Perl切割日志的利器
2014-11-24 14:06:08 来源: 作者: 【 】 浏览:3
Tags:Perl 切割 日志 利器

用了过awk,python,perl都切过日志,还是感觉perl是切日志的高手,执行效率高,功能也足够强大。下面是一个小例子:


open(FILE,"/data/ebi/meta/log");
open(CONF,"/data/ebi/conf/urltype.txt");
open(LOG,">/data/ebi/meta/log_2");
@array1=();
while() {
chomp;
@array2 = split(/,/, $_);
if(scalar(@array2)>=6){
push @array1,[@array2];
}
}


close(CONF);




while()
{
chomp;
my ($suv,$times,$ip,$url,$refer,$type1) = split(/\s+/, $_);
$type=$type1;
my (undef,undef,$site) = split(/\//, $url);
if($urlsitemap{$url}){
$site = $urlsitemap{$url}[0];
$prod = $urlsitemap{$url}[1];
$fun = $urlsitemap{$url}[2];
}
else{
for $i (0 .. $#array1){
$regx = @{$array1[$i]}[1];
if($url=~/$regx/){
$site = @{$array1[$i]}[2];
$prod = @{$array1[$i]}[3];
$fun = @{$array1[$i]}[4];
$urlsitemap{$url}=[$site,$prod,$fun];
last;
}
}
}



print LOG "$site $suv $ip $url $refer,$type\n ";


}


close(FILE);



close(LOG);


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Unix环境中Real time, User time .. 下一篇C++ 使用正则表达式分割字符串

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: