Batch - Probleme de Telechargement de fichier sur un ftp

Résolu/Fermé
ptisephy Messages postés 74 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 8 novembre 2022 - Modifié le 30 janv. 2018 à 13:26
ptisephy Messages postés 74 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 8 novembre 2022 - 14 févr. 2018 à 11:51
Bonjour,
je souhaite envoyer des fichiers sur un FTP , avec une tache planifié mais je n'y arrive pas, pourtant quand je lance le programme manuellement ça marche, je m'explique, sous l'invite de commande je tape :

ftp
open hoteFTp
//il me demande user
Username
//il me demande le mot de passe
Password //login ok proceed
bin
cd /dossiertraitement/soudossiers //il me dit que j'ai changé de repertoire "folder changed to .."
lcd d:\DossierSource //il me confirme //IL ME DIT " dossier local maintenant ..."
mput *.*

bye

apres le mput il me demande une confirmation pour chaque fichier


Puis quand je créer un fichier Traitement.ftp avec:


ftp
open hoteFTp
Username
Password
bin
cd /dossiertraitement/soudossiers
lcd d:\DossierSource
mput *.*
bye

et que je le lance a partir du gestionnaire de tache, et que je créer une tache planifié il me fait rien, est ce normal ? Un grand merci à vous


A voir également:

2 réponses

barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
Modifié le 4 févr. 2018 à 01:03
Bonjour,

Essaie comme ça :

@echo off

set script=%temp%\script.ftp

> %script% ECHO ptisephy
>>%script% ECHO ton_password
>>%script% ECHO lcd d:\DossierSource
>>%script% ECHO cd dossiertraitement\sousdossiers
>>%script% ECHO binary
>>%script% ECHO mput *.*
>>%script% ECHO close
>>%script% ECHO quit

ftp -i -s:%script% hoteFTP

del /f /q %script%

Tu sauvegardes ce script en l'appelant par exemple toto.bat puis tu crées une tâche planifiée pour le lancer.


0
ptisephy Messages postés 74 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 8 novembre 2022
5 févr. 2018 à 15:42
Bonjour,
un grand merci ça marche tres bien !

J'ai testé la commande suivante car à un autre moment je récupère des fichiers d'un ftp que je veux copier vers un dossier local, j'ai tenté de faire ceci :


@echo off

set script=%temp%\script.ftp

> %script% ECHO ptisephy
>>%script% ECHO ton_password
>>%script% ECHO lcd dossiertraitement\ssDosierTrait
>>%script% ECHO cd d:\DossierResultat\2018
>>%script% ECHO binary
>>%script% ECHO mget *.*
>>%script% ECHO close
>>%script% ECHO quit

ftp -i -s:%script% hoteFTP

del /f /q %script%


est ce la bonne syntaxe ? car quand je la lance, il me copie d'autres fichiers qui proviennent de je ne sais où
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
5 févr. 2018 à 18:58
Je pense que tu as inversé le cd et le lcd, tu ne peux pas mettre de lettre de lecteur dans la commande cd.
0
ptisephy Messages postés 74 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 8 novembre 2022
Modifié le 7 févr. 2018 à 13:24
ok c'est bon
j'ai en effet inversé le lcd et le cd ce traitement là est ok .
J'ai remodifié le script en ajoutant la date du jour comme ceci :

@echo off

set script=%temp%\script.ftp
set dossier=%date:~0,2%%date:~3,2%%date:~6,4%
> %script% ECHO ptisephy
>>%script% ECHO ton_password
>>%script% ECHO lcd d:\DossierSource\%dossier%
>>%script% ECHO cd dossiertraitement\sousdossiers
>>%script% ECHO binary
>>%script% ECHO mput *.*
>>%script% ECHO close
>>%script% ECHO quit

ftp -i -s:%script% hoteFTP

del /f /q %script%

deplacement_1vers_source >> "d:\DossierSource\log\fichierlog.txt"


puis j'ai voulu mettre un systeme de log mais quand je met la ligne pour le log, il me fait une erreur il me dit "
un sous repertoire ou un fichier d:\DossierSource\07022018 existe deja " et ça en boucle comment ça se fait ?

Merci !
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
7 févr. 2018 à 19:38
@echo off

set script=%temp%\script.ftp
set dossier=%date:~0,2%%date:~3,2%%date:~6,4%

> %script% ECHO ptisephy
>>%script% ECHO ton_password
>>%script% ECHO lcd d:\DossierSource\%dossier%
>>%script% ECHO cd dossiertraitement\sousdossiers
>>%script% ECHO binary
>>%script% ECHO mput *.*
>>%script% ECHO close
>>%script% ECHO quit

(ftp -i -s:%script% hoteFTP) >> "d:\DossierSource\log\fichierlog.txt"

del /f /q %script%
0
ptisephy Messages postés 74 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 8 novembre 2022
14 févr. 2018 à 11:51
merci à vous !
0