Que tal amigos, es la primera vez que envio un mensaje, y espero entiendan la pregunta.
estube haciendo practicas con este modulo y leyendo muy bien el tutorial que habla sobre este:
el codigo original y como aparece en el tut es este:
#!/usr/bin/perl
use strict;
use File::Find;
my $dir = 'C:/Perl/lib/';
find(\&imprimir_archivo, $dir);
sub imprimir_archivo{
my $elemento = $_;
print "$elemento\n" if -f $elemento;
}
bueno.. hasta ahi todo bien.. pero me entro la curiosidad con la variable que buscaba una cadena o letra en en especial de cualquier archivo.. el codigo con esta variable es este:
#!/usr/bin/perl
use strict;
use File::Find;
my $dir = 'C:/Perl/lib/';
find(\&imprimir_archivo_pl, $dir);
sub imprimir_archivo_pl{
my $elemento = $_;
if(-f $elemento && $elemento =~ /\.pl$/){
print "$File::Find::name\n";
}
}
todo muy bien, se puede ver q en la parte
if(-f $elemento && $elemento =~ /\.pl$/){ busca archivos q tengan al final .pl, pero me puse a hacer la practica.. q el programa pidiera la extencion del archivo al usuario y buscase los archivos con esta extension introducida por el usuario
e hice lo siguiente
#!/usr/bin/perl
use strict;
use File::Find;
my $dir = 'C:/Perl/lib/';
print "introduce la extension del archivo: \n";
my $ext=<STDIN>;
find(\&imprimir_archivo_pl, $dir);
sub imprimir_archivo_pl{
my $elemento = $_;
if(-f $elemento && $elemento =~ /\.$ext$/){
print "$File::Find::name\n";
}
}
la variable de entrada como se ve es $ext, pero al compilarlo no me da.. ame muestra efectivamente el mensaje de "introducir la extencion" pero no me muestra ningun archivo
alguien me podria decir q es lo que sucede.. si hay alguna parte en especial donde colocar
print "introduce la extension del archivo: \n";
my $ext=<STDIN>;
o lo he escrito mal.
Muchas gracias de antemano