Thread grösse von 2 dateien vergleichen (5 answers)
Opened by cc at 2004-02-29 00:59

cc
 2004-02-29 00:59
#80386 #80386
User since
2004-01-09
55 Artikel
BenutzerIn
[default_avatar]
hi

habe ein problem, der ich selber nicht lösen kann.
habe da ein perl script, der 2 dateien gemäss einer info datei zuerst umbennent
und nacher per ftp weiterschickt:
zuerst die erste datei und 5 minuten später die zweite.

wie kann ich aber dieses script abändern, nachdem die erste datei
geschickt ist, sicher sein dass sie vollständig angekommen ist
und erst nacher die zweite schicken ?
z.B size vergleichen ( lokal und auf dem remote ftp server ) ?

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
31
32
33
34
35
36
37
38
#!/usr/bin/perl

use strict;
use warnings;
use File::Copy;
use Net::FTP;
use Net::Netrc;

# change directory
chdir "/var/ftp/files" or die "/var/ftp/files: $!\n";

# DO NOT transfer without info file
-f "/home/ftp/files/info" or die "info file is missing\n";

open(FILE, "<info>");
while (<FILE> ) {
s/\W*$//;
next if (!$_);
/^(.+?) \s+ (.+?)$/x;

my ($old, $new) = ($1, $2);
rename $old, $new; # rename files

# ftp transfer

my $server = "X.X.X.X";
my $ftp = Net::FTP->new ($server, Timeout => 9000, Debug => 3);
$ftp or die "$server: cannot connect: $@";
# If you don't use ~/.netrc
$ftp->login ('anonymous', 'someone@mydomain')  or
die "$_: cannot logon: " . $ftp->message;

$ftp->put ($2) or
die "$server: cannot put $2: " . $ftp->message;

sleep ( 5 * 60 )

}


Bearbeitet von Crian: Code-Tag eingefügt\n\n

<!--EDIT|Crian|1078390783-->

View full thread grösse von 2 dateien vergleichen