Задача:
Необходимо получить имена всех файлов каталога в массив @files.
Решение:
Откроем каталог функцией opendir и последовательно считаем имена файлов функцией readdir:
my $dir = '/home/dir_name';
my @files;
opendir(DIR, $dir) or die "can't opendir $dir: $!";
while (defined(my $file = readdir(DIR))) {
next if $file =~ /^\.\.?$/;
push @files, $file;
}
closedir(DIR);