use Net::FTP; use CWD; my $server=""; my $username=""; my $password=""; my $filenameup =''; my @liste = (); my $liste = ''; my $verzeichnis =''; my %verzhash = (); my %FileSize = (); $ftp=Net::FTP->new($server, Debug=>0) $ftp->login($username, $password) $ftp->cwd($verzeichnis); $dir= $ftp->pwd(); @liste=$ftp->ls(); mkdir ("C:/download/".$verzeichnis); foreach $liste(@liste){ Listen erstellen } $Directory=''; foreach $Directory(@Directory){ if($Directory ne $verzeichnis.$verzeichnis){ $liste =''; @liste = (); $ftp->cwd($Directory); $dir= $ftp->pwd(); @liste=$ftp->ls(); foreach $liste(@liste){ Listen erstellen } } } foreach $element(@htmDirectory){ $file = $ftp->mdtm($element); $verzhash{$file}=$element; } foreach $Directory(@Directory){ mkdir ("C:/download/".$Directory); } $i=0; @localDirectory=(); foreach $wert (sort {$a<=>$b} keys %verzhash){ if ($i<=0){ push @localDirectory, "C:/download".$verzhash{$wert}; push @remoteFile, $verzhash{$wert}; $ftp->type("I"); $ftp->get($verzhash{$wert},"C:/download".$verzhash{$wert}); print "Datei : $verzhash{$wert}\n"; $FileSize{$verzhash{$wert}} = $ftp->size($verzhash{$wert}); } $i++; } $ftp->quit(); foreach $element(@localDirectory){ &headinfo($element); } $element=''; $ftp=Net::FTP->new($server, Debug=>0); $ftp->login($username, $password); foreach $element(@remoteFile){ &uploadfile($element); } $element=''; $ftp->quit() sub headinfo { hier wird die Datei geƤndert .... } sub uploadfile { $ftp->type("I"); $filenameup = $ftp->put("C:/download/".$_[0], $_[0]); print "$filenameup ($FileSize{$_[0]} - ". $ftp->size($_[0]) .")\n"; print "Letzte Aenderung nach Upload ". $ftp->mdtm($_[0]) ."\n\n"; }