in reply to Open in for loop/array structure
I would try running it like this:
#!/usr/local/bin/perl use warnings; use strict; my @FN = map "out-02-$_.txt", '00' .. '18', 20 .. 28, 30 .. 38; for my $filename ( @FN ) { print "$filename\n"; open my $FILE, '<', $filename or die "Can't open $filename: $!"; open my $OUT, '>', "ND_$filename" or die "Can't open ND_$filename: + $!"; my ( @BU, @MA1, @MA2 ); while ( my $line = <$FILE> ) { if ( $line =~ /K-INF,LEAK \(B2/ ) { push @BU, ( split ' ', $line )[ 14 ]; } elsif ( $line =~ /0 EID: 93237/ ) { push @MA1, join ' ', ( split ' ', <$FILE> )[ 3 .. 11 ]; } elsif ( $line =~ /0 EID: 95241/ ) { push @MA2, join ' ', ( split ' ', <$FILE> )[ 3 .. 9 ]; } } for my $i ( 0 .. 57 ) { print $OUT join( ' ', $BU[ $i ] || '', $MA1[ $i ] || '', $MA2[ + $i ] || '' ), "\n"; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Open in for loop/array structure
by igotlongestname (Acolyte) on Jun 03, 2008 at 17:58 UTC | |
by jwkrahn (Abbot) on Jun 03, 2008 at 20:52 UTC |