in reply to Multiple simultaneous filehandles

There is little (unless these files are huge) need to make this so complicated. Just create the structure of the file in a AoAoA and process. No need to worry about multiple file handles, just use one over and over again. Whenever I tackle something like this, I almost always create the data structure and then process.

If you're having a tough time coming up with a solution, it's almost always a good idea to visulize/write down the data structure. Then the program makes itself. Oh and Data::Dumper is your friend.

use strict; use warnings; my @file = ( '1 2 3 4', '5 6 7 8', '9 10 11 12', '13 14 15 16'); my @data; foreach my $line (@file) { my @fields = split(/\t/,$line); for (my $x = 1 ; $x <= $#fields ; $x++) { push @{$data[$x-1]}, [$fields[0],$fields[$x]]; } } for ( my $x = 0 ; $x <= $#data; $x++) { open(FH,">OUTPUT_$x") or die "$!\n"; foreach my $fields ( @{$data[$x]} ) { print FH "$fields->[0] $fields->[1]\n"; } close FH; }


grep
One dead unjugged rabbit fish later