>Is the output only being written if ALL the variables match??
>
>=== start===
>use strict;
>my $JOBSTART = 'SNBJH_3203J';
>my $CONDSTART = 'CONDSTART';
>my $JOBEND = 'SNBJH_3211J';
>my $CONDEND = 'SNBJH_3045E';
>my $JOBCANC = 'SNBJH_3258J';
>my $XFER = 'SNBJH_3710J';
>my $VOLUSED = 'SNBJH_3320J';
>
>opendir DIR, '.' or die "opendir: $!";
>my @files = grep /^3D2*\.log$/i, readdir DIR;
>closedir DIR;
>
>print "files=@files\n";
>open OUT, ">myfile.csv" or die "openCSV: $!";
>foreach (@files) {
>
> print "opening $_\n";
> open IN, $_ or die "open $_: $!";
> while (<IN>) {
> my @f = split /\s+/,$_,9;
> print "parsing $_\n";
> if (
> /$JOBSTART|$CONDSTART|$JOBEND|$CONDEND|$JOBCANC|$XFER|$VOLUSED/i )
>{
> print OUT join (',', @f) . "\n";
>} else {
> print "skipped: '$_'";
>}
Either one of the variables matched in the line would be printed.
I would move the line (with split function) down into the condition:
while (<IN>) {
print "parsing $_\n";
if (
/$JOBSTART|$CONDSTART|$JOBEND|$CONDEND|$JOBCANC|$XFER|$VOLUSED/i )
{
my @f = split /\s+/,$_,9;
print OUT join (',', @f) . "\n";
} else {
print "skipped: '$_'";
}
}
Jing Wee
> }
> close IN;
>
>close OUT;
>}
>===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