use strict; use warnings; use autodie; use File::Find::Rule; my @f_files = File::Find::Rule ->file ->name(qr/^f.*$/) ->in(qw(/dir1 /dir2 /dir3 )); foreach (@f_files) { print "$_\n"; }