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