sub get_filehandles { my $dir = shift; opendir my ($dh), $dir; my @fhs = map { my $fh; open( $fh, '<', "$dir/$_" ) ? $fh : do { warn "$dir/$_: $!"; () } } grep { -f "$dir/$_" } readdir($dh); closedir $dh; return \@fhs; }