Desarrollé el siguiente script con un par de ejemplos, y todo bien; el único problema es que al descargar los archivos ".zip" al intentar abrir cualquier archivo (con winrar o winzip), me dice "Unexpected end of archive", y descargando el mismo archivo pero con filezilla no me da ningún inconveniente, y ambos son del mismo tamaño y extensión.
Aquí el script que utilizo:
Using perl Syntax Highlighting
- use Net::FTP;
- $ftp = Net::FTP->new("misitio", Debug => 0) or die "Imposible conectar al servidor misitio razon: $@";
- $ftp->login("usuario",'password') or die "No se puede loguear ", $ftp->message;
- open(A,"OBTENER.TXT"); #leo los archivos que necesito (esto me lo dá otro programa, solo contiene la fecha en formato YYYYMMDD=20131125)
- my @L=<A>;
- open(C, ">log_archivos.txt");
- foreach(@L){
- $_=~s/\n//g;
- my $path="/directorio_donde_estan_los_archivos/$_";
- $ftp->cwd("$path") or die "Imposible cambiar al directorio", $ftp->message;
- @filelist = $ftp->ls("*.zip");
- foreach(@filelist){
- print(C "$path/$_\n");
- $ftp->get("$_");
- }
- }
- $ftp->quit;
- close A;
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
Reitero, el script funciona para "bajar" los archivos, pero por alguna razón, me dan error al intentar abrirlos.
Aprovechando, ¿cómo puedo descomprimir los archivos .zip con Perl? Gracias de antemano.