The below script will get you the output for the "Task 3" lines. You will
need to modify the print line for the "Task 4" lines and so on.

use strict;

my $log = "pathandnameoflogfile";
my $parsed_log = "pathandnameofparsedlogfile";
my @line;

open (LOG, "$log");
open (OUT, ">$parsed_log");
while (<LOG>) {
  chomp;
  print OUT "$line[2],$line[3]
$line[4],$line[5],$line[6],$line[12],$line[15],$line[18]\n" and @line =
split(/\s+/,) if / Task 3/;
}

close LOG;
close OUT;

Pat

 -----Original Message-----
From:   [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]  On Behalf Of Mike
Singleton
Sent:   Thursday, September 12, 2002 10:58 AM
To:     [EMAIL PROTECTED]
Subject:        perl question

How would I script the following example??

== Original log ===
172.16.54.132 ssjobhnd Fri Jun 14 19:20:12 2002 SNBJH_3710J Task 3: KB
transferred 414636.4  Task time 313 s.  Throughput 1324.7 KB/s
172.16.54.132 ssjobhnd Fri Jun 14 19:20:13 2002 SNBJH_3257J ----- Task 4
(node SEA-REGWEB2, disk WIN2KSYS:) of job 1024106405 starts -----
172.16.54.132 ssdmtape Fri Jun 14 19:20:18 2002 SNBDBR0494I 75:
dm_get_keyword: Possible EOF on socket 5.
172.16.54.132 ssjobhnd Fri Jun 14 19:24:03 2002 SNBJH_3260J ----- Done task
4 of job 1024106405 -----
=== End original log ===

== begin preferred output===
Fri,Jun 14,19:20:12,2002,414636.4,313,1324.7
Fri,Jun 14 19:20:13,2002,----- Task 4 (node SEA-REGWEB2, disk WIN2KSYS:) of
job 1024106405 starts -----
Fri,Jun 14,19:24:03,2002, ----- Done task 4 of job 1024106405 -----
==end==

===
Mike Singleton
Network Analyst
(253) 272-1916  x1259
(253) 405-1968 (cellular)
[EMAIL PROTECTED]

DaVita Inc.
_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to