my (@files,@dirs); for (readdir DIR) { next if $_ eq '.' or $_ eq '..'; $_="$dir/$_"; push @files, $_ if -f; push @dirs, $_ if -d _; }