multi-line.pl
上传用户:gzpyjq
上传日期:2013-01-31
资源大小:1852k
文件大小:1k
源码类别:

手机WAP编程

开发平台:

WINDOWS

  1. #!/usr/bin/perl -w
  2. # This script joins multi-line entries from access.log
  3. # cat bearerbox_access.log | multi-line.pl
  4. $|=1;
  5. $linenum=0;
  6. $result="";
  7. while($line = <STDIN>) {
  8. $linenum++;
  9. chop($line);
  10.         next if $line =~ /Log begins/;
  11. next if $line =~ /Log ends/;
  12. if ( $result ne "" && $line =~ /^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2} .+? .+? [SMSC:.*?] [SVC:.*?] [from:.*?] [to:.*?] [flags:.:.:.:.:.+?] [msg:.+?:.*$/) {
  13. $result = "";
  14. print STDERR "$linenum:$linen";
  15. }
  16. $result .= $line;
  17. if($result =~ /^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2} .+? .+? [SMSC:.*?] [SVC:.*?] [from:.*?] [to:.*?] [flags:.:.:.:.:.+?] [msg:.+?:.*?] [udh:.+?:.*?]$/i) {
  18. print $result."n";
  19. $result="";
  20. }
  21. }