opendir my ($scan), $path or die "Can't scan folder $path: $!\n"; while (my $entry = readdir $scan) { next if ! -d "$path/$entry" || $entry !~ /^d[1-5]$/; next if ! -f "$path/$entry/list.txt"; ... }