Otra forma de manipular un directorio es mediante el uso de un directory handle o manejador de directorio. Podemos abrirlo con opendir , leer del mismo el siguiente nombre de fichero mediante readdir y cerrarlo con closedir .
lhp@nereida:~/Lperl/src/dir$ cat -n dirhandles.pl
1 #!/usr/bin/perl -w
2 use strict;
3
4 my $directory = shift;
5 my $regexp = (shift or '.*');
6 opendir DH, $directory or die "No encuentro $directory: $!";
7
8 foreach my $file (readdir DH) {
9 printf "$file\n" if $file =~ m/$regexp/o;
10 }
11 closedir DH;
Sigue un ejemplo de ejecución:
lhp@nereida:~/Lperl/src/dir$ dirhandles.pl /tmp/ '\d+$' ssh-eSbkNq1402 v274545 Parallel-Simple-Pipe-0.01 IO-Tty-1.02
readdir no contienen
el camino, sólo el nombre.
Casiano Rodríguez León
