Bonjour à tous,
J'ai un problème que je n'arrive pas à résoudre, j'ai beau chercher dans tous les forums, aussi je me tourne vers vous.
J'ai besoin de récupérer une série de fichier sur un serveur ftp toutes les 10 minutes.
Pour cela pas de problème j'ai crée un recup.bat avec l'instruction :
ftp -i -s:"D:\mondossier\monsousdossier\login.txt" -nLe fichier login.txt contient les informations de connection :
Jusque là ça va. Mais j'ai pu constater des petits problèmes parfois (fichiers oubliés) du coup je me suis dit je vais faire un log pour voir d'éventuels problèmes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 open ftp.domaine.net user MOI motdepasse binary mget *.csv close quit
Vu que j'exécute cette tâche toutes les 10 minutes je veux que mon log.txt ai un nom avec la date du jour mais aussi l'heure.
J'ai crée save.bat avec l'instruction suivante (il me semble que c'est ce qu'on appelle une boucle for) :
*******
Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 @echo off for /f "tokens=1,2,3 delims=:" %%a in ('time /t') do set heure=%%a for /f "tokens=1,2,3delims=:" %%a in ('time /t') do set minute=%%b echo Heure : %heure% echo Minute : %minute% echo %date:~6,4%%date:~3,2%%date:~0,2% recup > "D:\mondossier\monsousdossier\log\log_%date:~6,4%%date:~3,2%%date:~0,2%%heure%%minute%.txt"
*******
Quand je déclenche save.bat en double cliquant dessus, pas de problème ça passe, le fichier log est crée et j'ai tout l'évenement dessus.
Par contre quand je le passe par le planificateur de tâche il me crée le log mais vierge.
J'ai essayé en rajoutant un timeout en me disant que c'était une question de délai mais rien de probant.
Je précise que j'ai plein d'autres tâches programmées avec des mget, mput, xcopy etc et que tout fonctionne parfaitement.
Vous auriez une idée ?
Windows 7 pro 64bits sp1
mon ordi fait partie d'un domaine
Merci à vous !
Partager