File::Find
. Este módulo permite un
recorrido recursivo de los directorios.
He aqui un ejemplo de uso:
DB<1> use File::Find DB<2> sub Wanted { /\.yp$/ or return; print $_,"\n" } DB<3> find(\&Wanted, '.') Autoaction1.yp Calc.yp Calc2.yp Infixtree.yp Yacc.yp
La función find
espera como primer argumento una referencia
a una subrutina. El operador Perl \
actúa de manera similar al
ampersand en C: nos devuelve una referencia al objeto
al que se le aplica. Por ejemplo:
$ra = \$a; # referencia a escalar $rb = \@b; # referencia a arreglo $rc = \%c; # referencia a hash $rf = \&f; # referencia a subrutina $rx = \$rb; # referencia a referencia
Usando File::Find
escriba una función
que muestre los ficheros en el directorio actual
mayores que un cierto tamaño
dado.