[bat]envoi de fichier sur ftp

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
oyo tout le monde !

Voilà, j'ai un soucis avec un petit bat. Je génère automatiquement un fichier sur mon pc, et je veux l'envoyer par ftp. J'ai donc 2 fichier : commande.bat et ftp.txt :

commande.bat :
ftp -n -s:ftp.txt site.dom.fr
del c:\Tempo\TMP.ZIP 

ftp.txt
user user pw
send c:\Tempo\TMP.ZIP 
quit


ca fonctionne dans 75% des cas mais une fois sur 4 ca ne fonctionne pas (connexion fermé par l'hote distant en général) ... je voudrai savoir si je peux récupérer l'erreur et relancer l'envoi de fichier si erreur il y a .? (PS : j'ai testé avec if (%errorlevel% == 1) mais rien T_T)

merci d'avance !!
biz, naga

3 réponses

  1. Utilisateur anonyme
     
    yop !

    Oui je l'avais vu, mais je trouve pas de tuto où ils gèrent les erreurs de connexion =/

    Parce qu'à part ça, ça fonctionne bien ...
    0
    1. Utilisateur anonyme
       
      pour info, même quand je vais sur le ftp manuellement en ligne de commande, je me fais parfois jeter de la même manière. En gros je voudrai faire un boucle, qui, en cas d'erreur, refais la demande de connexion et l'envoi (je peux pas tester la présence du fichier, vu qu'il est toujours sur le ftp et que je fais un simple mise à jours en gros)
      0
    2. Angelneonizz Messages postés 790 Date d'inscription   Statut Membre Dernière intervention   190
       
      peut être en comparant la taille du fichier ?
      0
    3. Utilisateur anonyme
       
      oui j'y ai pensé, mais je ne vois pas comment récupérer l'erreur de connexion (si je ne suis pas connecté, je peux pas test la différence des fichiers^^)

      Le traitement est particulièrement simple, le soucis vient du fait que je ne sais pas vérifier l'état de ma connexion.

      J'ai tenté avec :
      :REF
      ftp -n -s:ftp.txt site.dom.fr
      if (%errorlevel% == 0)
         goto FIN
      else
         goto REF
      :FIN
      del c:\Tempo\TMP.ZIP 
      



      mais j'ai jamais d'erreurs T_T
      0
    4. Utilisateur anonyme
       
      parfait !!!!! merci bien pour le coup de main, j'arrivais pas à trouver =/ (et pourtant il était sur ccm T_T)

      je test tout ca et si ca marche je refile le code ;)
      0
  2. Utilisateur anonyme
     
    Alors la solution qui me semble la plus simple :

    :RES
    ftp -n -s:ftp.txt site.site.fr >> logconn.txt 
    find /c "226" logconn.txt
    if "%ERRORLEVEL%"=="1" goto RES
    


    voila voila, encore merci !
    naga
    0