Übertragen & Löschen Von Dateien vom SFTP Mit SFTP-Foreign-Modul

Meine Forderung ist zum übertragen von Dateien und Ordner, die von SFTP remote-Standort zu unix Lage. Ich bin neu in perl und shell-scripting, und das wurde sehr verwirrend. Ich habe versucht, mit rget Befehl sftp außen, wie unten gezeigt. Aber es funktioniert nicht und es ist nicht immer übertragen werden. Wie lösche ich die Dateien und Ordner nach dem kopieren aus der sftp-server?

use Net::SFTP::Foreign;

my $host       = "sftp.elsevier.com";
my $remote_dir = "sample/host";
my $localdir = "sample/local";
my $username   = "username";
my $password   = "password";
my $debug      = 0;

$sftp = Net::SFTP::Foreign->new($host, timeout => 240,user => $username, password => $password) or $newerr = 1;
push @ERRORS, "Can't sftp to $host: $!\n" if $newerr;
myerr() if $newerr;
print "Connected to $host\n";

$sftp->rget($remote_dir, $localdir) or $newerr = 1;
push @ERRORS, "Cant tranfer\n" if $newerr;
myerr() if $newerr;
$sftp->disconnect if $newerr;
print "Files are transferred successfully\n";

#Deleting files

$sftp->setcwd($remote_dir) or $newerr = 1;
push @ERRORS, "Can't cd $!\n" if $newerr;
myerr()    if $newerr;
$sftp->disconnect if $newerr;

my $files = $sftp->ls or $newerr = 1;
push @ERRORS, "Can't get file list $!\n" if $newerr;
myerr() if $newerr;

foreach (@$files){
$sftp->remove($_) or $newerr = 1;
push @ERRORS, "Cant delete\n" if $newerr;
myerr() if $newerr;

print "Deleted files successfully\n";

#}
$sftp->disconnect;

sub myerr {
    print "Error: \n";
    print @ERRORS;
    exit 0;
}

Innerhalb des SFTP-Ort - Probe/host habe ich viele Ordner und Dateien, die alle kopiert werden müssen, um die lokalen unix-server - Beispiel/local und löschen von remote-Standort.

Das ist ein bisschen off-topic, aber wo hast du lernen, diese Art der übergabe von Argumenten an subs und die Durchführung der Fehlerbehandlung? Hast du das aus irgendeinem tutorial oder eine andere Ressource? Ich würde sehr interessiert an einem link, denn das ist unglaublich schlechter Stil.

InformationsquelleAutor user2616662 | 2013-07-25

Schreibe einen Kommentar