• Publicidad

Enviar carpeta por FTP a servidor

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Enviar carpeta por FTP a servidor

Notapor enric73 » 2014-09-29 12:39 @568

Hola,

¿cómo se enviaría un directorio a un servidor externo por FTP? Actualmente envío fichero txt, CSV, y binarios... con el siguiente código:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/local/bin/perl
  2.  
  3. use Class::Date qw(date now);
  4. use File::Path ;
  5. use DateTime;
  6. use BSD::Resource;
  7. use File::Copy;
  8. use Net::FTP;
  9.  
  10. my $username = "web.com";
  11. my $pwd = "¿Quien sabe?";
  12.  
  13. my $ftp = Net::FTP->new("xxx.xx.xxx.xxx", Debug => 0) or die("No s'ha pogut connectar el servidor: $!");
  14. $ftp->login($username,$pwd) or die("Login incorrecte: $!");
  15. #ACCIONS
  16. $ftp->cwd("html/");
  17. my @arxius = glob("/home/enric/csv/*.csv");
  18. foreach my $File(@arxius){
  19. $ftp->put("$File");
  20. }
  21. my @arxius2 = glob("/home/enric/interpolats/*.png");
  22. foreach my $File(@arxius2){
  23. $ftp->binary();
  24. $ftp->put("$File");
  25. }
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Última edición por explorer el 2014-09-29 13:26 @601, editado 1 vez en total
Razón: envio => envío; codigo => código
enric73
Perlero nuevo
Perlero nuevo
 
Mensajes: 154
Registrado: 2012-03-16 06:27 @311

Publicidad

Re: enviar folder por ftp a servidor

Notapor danimera » 2014-09-29 12:58 @582

Yo estoy haciendo un proyecto similar, para mover todo un directorio, pero uso SFTP, y mira, hay dos opciones: o lo comprimes y lo envías, o te toca enviar fichero por fichero... UNIX tiene el comando cp que también te mueve un fichero de servidor a servidor...

En este caso lo mejor es que lo comprimas o lo envíes uno por uno, o mejor usa un módulo más avanzado, para hacerlo, como puede ser: Net::SFTP o el Net::SFTP::Recursive
Última edición por explorer el 2014-09-29 13:28 @603, editado 1 vez en total
Razón: envias => envías; tambien => también; envies => envíes; modulo => módulo; mas => más
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Enviar carpeta por FTP a servidor

Notapor explorer » 2014-09-29 13:39 @610

El proceso es el mismo que si fuera copiar un árbol de directorios:
  • Para todos los contenidos del directorio
  • Si es un directorio, entrar en él y nos volvemos a ejecutar de forma recursiva
  • Si es un archivo, lo copiamos
  • Una vez terminado de copiar todos, subimos un nivel o termina el programa.
Lo más cómodo, desde luego, es usar un módulo, como el caso de Net::FTP::Recursive.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Enviar carpeta por FTP a servidor

Notapor enric73 » 2014-09-29 13:47 @616

¡Gracias a los dos!
enric73
Perlero nuevo
Perlero nuevo
 
Mensajes: 154
Registrado: 2012-03-16 06:27 @311


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados