Probleme - FTP Download

Le
ernond_paul
Bonjour,

J'ai fait un petit script me permettant de télécharger des fichier
depuis un serveur FTP dont voici un extrait :


$ftp = Net::FTP->new($host, Debug => 1, Passive=>1);
$ftp->login($login,$password);
$ftp->cwd("/usr/local/apache/monDossier");
@file_list = $ftp->ls();
foreach $fichier (@file_list){
## get
}

en fait, les fichiers sont téléchargés, mais, les fichiers sont tous
corrompus :

exemple, pour un fichier dump.sql.qz, apres téléchargement avec mon
script, et apres décompression, j'obtient un fichier tel que :

= extrait :
)t .Table structure fo0d eist* g-oues'c
CREATDATLE * g-oues (og)t .@d or
g)t .@d or
g)t .@d or
g)t .@d or
g)t vt(3) unsignedspectNULL auto_incremSE ,or

= fin de l'extrait

c'est étrange, car on reconnais bien là un fichier Dump de SQL mais le
fichier à des problemes

Avez vous une idées à ce probleme ?

Merci de votre aide.
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Youri
Le #122105
Paul wrote:

(...)
Avez vous une idées à ce probleme ?


Bonjour,
Est-ce que le transfert se fait bien en mode binaire et pas en ASCII ?

--
Youri

Paul GABORIT
Le #122104
À (at) 3 May 2004 08:48:44 -0700,
(Paul) écrivait (wrote):
[...]
en fait, les fichiers sont téléchargés, mais, les fichiers sont tous
corrompus :

exemple, pour un fichier dump.sql.qz, apres téléchargement avec mon
script, et apres décompression, j'obtient un fichier tel que :
[...]

c'est étrange, car on reconnais bien là un fichier Dump de SQL mais le
fichier à des problemes...


Si la décompression des fichiers a lieu sans erreur, c'est que le transfert
s'est effectué correctement (un fichier *.gz corrompu ne peut pas se
décompresser correctement). Dans ce cas, vous pouvez soupçonner la création du
fichier côté serveur.

Si la décompression provoque des erreurs, vous devriez regarder du côté de la
méthode 'binary' (du package Net::FTP) avant de transférer des fichiers
binaires.

--
Paul Gaborit - Perl en français -
ernond_paul
Le #122099
Si la décompression des fichiers a lieu sans erreur, c'est que le transfert
s'est effectué correctement (un fichier *.gz corrompu ne peut pas se
décompresser correctement). Dans ce cas, vous pouvez soupçonner la création du
fichier côté serveur.



si je télécharge les fichier avec un client FTP, je peut alors
décompresser les .gz et ça marche, les dumps sont OK. donc cela vient
de mon script.

je vais me renseigner dans la doc pour le binary.

Louis POTY
Le #121682
Avec $ftp->binary(), cela devrait marcher...


"Paul" news:
Si la décompression des fichiers a lieu sans erreur, c'est que le
transfert


s'est effectué correctement (un fichier *.gz corrompu ne peut pas se
décompresser correctement). Dans ce cas, vous pouvez soupçonner la
création du


fichier côté serveur.



si je télécharge les fichier avec un client FTP, je peut alors
décompresser les .gz et ça marche, les dumps sont OK. donc cela vient
de mon script.

je vais me renseigner dans la doc pour le binary.



Denis Joiret
Le #121678
Bonjour,

Transférer en mode ASCII ne change rien si les machine de chaque côté de la
connexion sont du même type (ie: 2 Unix par exemple). Cela va simplement
faire plus de traitement de part et d'autre pour coder et décoder le contenu
du transfert en NVT-ASCII (ie: fin de ligne indiquée par la séquence CR LF).

Ce n'est évidemment pas le cas si les deux systèmes codent de manières
différentes les fins de lignes (ie: Unix et Windows par exemple).

Denis


"Youri" news:40966adb$0$306$
Paul wrote:

(...)
Avez vous une idées à ce probleme ?


Bonjour,
Est-ce que le transfert se fait bien en mode binaire et pas en ASCII ?

--
Youri



Publicité
Poster une réponse
Anonyme