in reply to efficiently printing to 30 files
mkdir "reports", 0755 || warn "Cannot make reports director: $!"; chdir ("reports") || die "couldn't change to directory : $!"; # tried to quickly put these together into a hash, # but made for more code than necessary # the way it stands now, @patterns and @files should have # the same number of (corresponding) elements my @patterns = (qr/ABC/, qr/DEF/, qr/GHI/); my @files = map { local *FH; open(FH, '>', 'group' . $_); *FH } qw(A B + C); foreach my $n (keys %emp) { for my $index (0..$#patterns) { if ($emp{$n}{'Org'} =~ $patterns[$index]) { local *FH = $files[$index]; print FH $emp{$n}{'Emp'} . "\n"; } } }
|
---|