Thread Dateigröße mit SFTP ermitteln? (6 answers)
Opened by Ralf at 2012-11-04 11:29

Gast Ralf
 2012-11-04 19:34
#163042 #163042
Danke für die Rückmeldung, beruhigt mich das nicht nur ich das Problem bin :-)

Hier meine beiden Varianten (Serverdaten weg gelassen):
Code: (dl )
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
30
#!/usr/bin/perl
use Net::SFTP;
use Net::SSH2;

$remote = "x"
$local_ssh2 = "ssh2";
$local_sftp = "sftp";

my $ssh2 = Net::SSH2->new();
$ssh2->connect($server) or die $!;

if ($ssh2->auth_password($username,$password)) {
my $sftp = $ssh2->sftp();
my %stat = $sftp->stat($remote);
$filesize_ftp = $stat{size};
print "Filesize von $remote ist $filesize_ftp\n\n"; # => das geht schnell

#$ssh2->scp_get($remote,$local_ssh2); # => der Teil geht nicht, erzeugte leere Datei

open (OUTPUT, "> $local_ssh2"); # => die langsame Alternative aus der Doku cpan
my $fh = $sftp->open($remote) or die;
print OUTPUT $_ while <$fh>;
}
$ssh2->disconnect();
# make our connection, Modul Net::SFTP
print "\n\n\nConnecting to $server mit $username und $password ... \n\n";
%args = ("user" => $username, "password" => $password);
my $sftp = Net::SFTP->new($server, %args);
$sftp->get($remote, $local_sftp);
print "Finished\n";


Die erste Variante dauert ca. 3-4 Minuten, die 2. Variante etwa 2-3 s. Beide Dateien sind gleich groß. Das kann irgendwie nicht richtig sein.
Vielleicht versuche ich morgen den umgekehrten Fall, wenn ich eine Datei übertrage.

Gruß Ralf
Last edited: 2012-11-04 19:38:27 +0100 (CET)

View full thread Dateigröße mit SFTP ermitteln?