1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
#!/usr/bin/perl use strict; use warnings; use Net::SSH2; # Bitte zum Testen versorgen: my $host = ''; my $user = ''; my $pwd = ''; my $filename = ''; my $ssh2 = Net::SSH2->new(); $ssh2->connect($host) or die $!; $ssh2->auth_password($user, $pwd) or die $!; # Das hier erzeugt eine null-Byte-Datei mit dem richtigen Namen: $ssh2->scp_get($filename, $filename) or die $!; __END__ # Das hier funktioniert zwar, ist aber sehr langsam (ca 20 kb/Minute): my $sftp = $ssh2->sftp(); my $inFH = $sftp->open($filename) or die $!; binmode($inFH); open my $outFH, ">", $filename or die $!; binmode($outFH); print $outFH $_ while <$inFH>;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
#!/usr/bin/perl use strict; use warnings; use Net::SSH2; use Net::SFTP::Foreign; # Bitte zum Testen versorgen: my $host = ''; my $user = ''; my $pass = ''; my $filename = ''; my $ssh2 = Net::SSH2->new(); $ssh2->connect($host) or die $!; $ssh2->auth_password($user, $pass) or die $!; my $sftp = Net::SFTP::Foreign->new( ssh2 => $ssh2 , backend => 'Net_SSH2' ); die $sftp->error if $sftp->error; $sftp->get($filename, $filename) or die $sftp->error;
QuoteWas mich ein bischen irritiert ist, dass der Autor...
2014-09-23T11:59:57 GwenDragonWelche libssh2 ist bei dir drin: perl -MNet::SSH2 -e "print join(' ', Net::SSH2->version, $Net::SSH2::VERSION)"
Bei mir:
1.4.3 66563 SSH-2.0-libssh2_1.4.3 0.48