use File::Find::Rule; my $seen = 1; my @files = find( file => exec => sub { $seen = 0 if /^d/i; $seen }, in => '/somedir' );