Thread Net::FTP kopieren mit Zeitstempel
(17 answers)
Opened by bianca at 2011-02-22 09:45
Hmmm, habe ein Problem.
Das folgende Script lädt sich selbst auf den Server hoch und versucht dann den Zeitstempel zu ändern. Ich bekomme immer ein Response Code 5 zurück, weiß jemand was das bedeutet? Und der Zeitstempel wird leider nicht geändert. Hab es mit quot und site versucht. Code (perl): (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 31 32 #!/usr/bin/perl -w use strict; use warnings; use Date::Calc qw ( Localtime ); my %env = ( ftp_server => 'bitte einsetzen', ftp_user => 'bitte einsetzen', ftp_pass => 'bitte einsetzen', ); my $modul = 1; eval "use Net::FTP; 1;" or $modul = 0; if (!$modul) { die 'Modul >Net::FTP< kann nicht geladen werden!'; } eval "use Net::FTP::File; 1;" or $modul = 0; if (!$modul) { die 'Modul >Net::FTP::File< kann nicht geladen werden!'; } my $ftp = Net::FTP -> new ($env{ftp_server},Debug => 0,Timeout => 60,Passive => 1) or die 'Verbindungsaufbau zum FTP Server fehlgeschlagen'; $ftp -> login ($env{ftp_user},$env{ftp_pass}) or die 'Login zum FTP Server fehlgeschlagen'; my $akt_ftp_verz = $ftp -> cwd ('/tmpdevelop') or die 'Verzeichniswechsel mißlungen'; $ftp -> ascii or die 'Umschaltung in ASCII-Modus fehlgeschlagen'; $ftp -> put ($0) or die 'Upload fehlgeschlagen'; my $timewert = '20110101000000'; print "Stempel muesste sein: $timewert\n"; my $ret = $ftp -> quot ('MFMT ' . $timewert . ' test_utime.pl') or die 'Sonderbefehl fehlgeschlagen'; print "Return: >$ret<\n"; my $neu = $ftp -> mdtm ('test_utime.pl'); $neu = sprintf ("%04d%02d%02d%02d%02d%02d",(Localtime ($neu))[0..5]); print "Nachher : $neu => " . ($neu == $timewert ? 'RICHTIG' : 'FALSCH') . "\n"; $ftp -> quit; 10 print "Hallo"
20 goto 10 |