Bonjour à tous,

C'est la première fois que j'utilise le module net::ftp de perl. J'ai une liste de fichiers à copier sur un serveur ftp (free). Voici mon code, les fichiers à copier sont lus à partir d'un fichier $infile :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
#!/usr/bin/perl
 
use strict;
use Net::FTP; 
 
...
 
my $ftp = Net::FTP->new("ftpperso.free.fr", Debug => 0, Timeout => 100000)  or die "Impossible de se connecter à : $@";
$ftp->login("monsite",'*********') or die "Impossible de se logger ", $ftp->message; 
$ftp->binary() || die "Unable to set mode to binary. ", $ftp->message;
$ftp->cwd("photos\/$bdd")or die "Impossible de changer de répertoire ", $ftp->message;
 
open(FILE, $infile) or die("ouverture du fichier $infile impossible");
while (my $ligne = <FILE>) 
	{
		chomp($ligne);
		my $no_photo = $nb_photo+$cpt+1;
		#on ftp les fichiers correspondants
		my $image_gde = "img\ \($no_photo\)\.jpg";
		my $image_mini = "mini_$image_gde";
		$ftp->put("$path_site\/photos\/$bdd\/$image_gde") or die "put $image_gde a echoue \n", $ftp->message;			
		$ftp->cwd("mini")or die "Impossible de trouver le répertoire mini \n", $ftp->message;	
		$ftp->put("$path_site\/photos\/$bdd\/mini\/$image_mini") or die "put $image_mini a echoue\n", $ftp->message;
		$ftp->cwd("..")or die "Impossible de changer de répertoire\n ", $ftp->message;
		$cpt++;
	}
	close(FILE);
	$ftp->quit;
	print "Traitement en ligne accompli pour $cpt photos...\n\n";
...
Or au bout d'un certain temps les die() associés au put ou au cwd() sont activés. N'y aurait-il pas un moyen de répéter ces commandes jusqu'à leur exécution? Ou une autre solution?

Merci d'avance