Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Download file from sftp or FTP

by salva (Canon)
on Dec 28, 2009 at 23:15 UTC ( [id://814672]=note: print w/replies, xml ) Need Help??


in reply to Download file from sftp or FTP

using Net::SFTP::Foreign:
use File::Spec; use Net::SFTP::Foreign; my %args = (user => encode("iso-8859-1", $ftp_user), password => encode("iso-8859-1", $ftp_passwd), fs_encoding => "iso-8591-1"); $args{port} = encode("iso-8859-1", $ftp_port) if defined $ftp_port; $sftp = Net::SFTP::Foreign->new($ftp_url); $sftp->error and die "unable to connect ro remote host: " . $sftp->err +or; my @files = $sftp->glob($ftp_file, names_only => 1); $sftp->error and die "unable to glob: " . $sftp->error; for my $file (@files) { $file =~ m|([^/]+)$| or die "bad remote file name '$file'"; my $local = File::Spec->catfile($local_file, $1); $sftp->get($file, $local); $sftp->error and die "file transfer failed: " . $sftp->error; }

Replies are listed 'Best First'.
Re^2: Download file from sftp or FTP
by salva (Canon) on Dec 29, 2009 at 21:06 UTC
    And now...
    use Net::SFTP::Foreign; # BTW, setting your locale correctly would probably # make these "encode" operations unnecessary! my %args = (user => encode("iso-8859-1", $ftp_user), password => encode("iso-8859-1", $ftp_passwd), fs_encoding => "iso-8591-1"); $args{port} = encode("iso-8859-1", $ftp_port) if defined $ftp_port; $sftp = Net::SFTP::Foreign->new($ftp_url); $sftp->error and die "unable to connect ro remote host: " . $sftp->err +or; $sftp->mget($ftp_file, $local, on_error => sub { warn "error: " . $_[0]->error });

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://814672]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (4)
As of 2024-04-20 13:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found