Précédent   Forum des professionnels en informatique > Systèmes > Linux > Réseau
Réseau Vos questions autour des réseaux et télécoms sous Linux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/02/2006, 12h06   #1
Invité de passage
 
Inscription : juin 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4
Points : 1
Points : 1
Par défaut Faire des retry sur des erreurs FTP

Bonjour,

Dans un script ksh, j'envoie des fichiers sur un serveur distant en utilisant ftp. Or, j'ai besoin de faire des retry si les fichiers en question n'arrivent pas à bon port.

Ci-dessous un aperçu de mon script:
Code :
1
2
3
4
5
6
7
8
9
ftp -vn << EOF
open $REMOTE_SERVER
user $USERNAME $PASSWORD
lcd $LOCAL_DIRECTORY 
cd $REMOTE_DIRECTORY
mput *
....... Comment faire les retry à ce niveau ........
quit
EOF
Merci d'avance pour vos réponses
fejjal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 13h10   #2
Membre éprouvé
 
Avatar de bster
 
Inscription : mai 2005
Messages : 373
Détails du profil
Informations personnelles :
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mai 2005
Messages : 373
Points : 469
Points : 469
faire des essai multiple dans le client FTP est impossible
aucun client FTP n'accepte d'autres commandes interne que cette liste

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
!               delete          mget            put             send
$               dir             mkdir           pwd             sendport
account         disconnect      mls             quit            site
append          epsvall         mode            quote           size
ascii           form            modtime         recv            status
bell            get             mput            reget           struct
binary          glob            nlist           remotehelp      sunique
bye             hash            nmap            rename          system
case            help            ntrans          reset           tenex
cd              image           open            restart         trace
cdup            lcd             pipe            rhelp           type
clear           ls              private         rmdir           user
close           macdef          prompt          rstatus         verbose
cr              mdelete         protect         runique         ?
debug           mdir            proxy           safe
un truc comme ça ? tant que ça retourne pas zéro refaire...
verifier la syntaxe du while parceque je suis pas sur mais bon...c'est le principe

la seule solution que je connaisse pour faire fichier par fichier des retrys c'est

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
for i in fichier1 fichier2 ... fichierXXX ; do
toto=1
 while [ $toto!=0]
 do
  ftp ... 
   put $i
   ...
  EOT 
 toto=$?
 done
done
bref faire le test et le ftp indépendament pour chaque fichier emi/reçu
__________________
Comité de lutte contre le langage SMS sur les forums
Veuillez écrire dans un langage compréhensible par les humains, merci.
bster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 13h35   #3
Invité de passage
 
Inscription : juin 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4
Points : 1
Points : 1
Ok cette solution est bonne, mais elle nécessite plusieurs reconnexions au serveur ce qui peut s'avérer couteux en temps quand on veut envoyer des miliers de fichiers.

Merci quand même pour ta réponse , je marque le sujet comme Résolu
fejjal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 17h58   #4
Invité de passage
 
Inscription : juin 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4
Points : 1
Points : 1
Je supprime le tag résolu.
En fait, le code d'erreur retourné est toujours succès, sachant qu'en mettant le répertoire cible en lecture seule, le transfert ftp réussit, mais l'écriture échoue.
Y' a-t-il un moyen pour savoir si ça a bien marché ou pas?

Merci
fejjal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 23h34   #5
Invité de passage
 
Inscription : juin 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4
Points : 1
Points : 1
Je remets le tag résolu, en fait il suffit de rediriger dans un fichier et faire un grep sur les codes d'erreur FTP (4** et 5**)
Normalement un grep -E '^4|^5' ftp.out fait l'affaire

fejjal est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h27.


 
 
 
 
Partenaires

Hébergement Web