my @all = readdir(DIR); my @dirs = grep {-d "$base/£_" and $ne "." and $_ ne ".." } @all; my @files = grep {-f "$base/£_" } @all;