Télécharger un fichier d'un FTP avec un batch

Résolu/Fermé
2berte
Messages postés
204
Date d'inscription
vendredi 17 novembre 2006
Statut
Membre
Dernière intervention
10 mai 2010
- 21 avril 2009 à 11:28
 Garfunkel - 12 mars 2021 à 13:59
Bonjour,

Je souhaite télécharger un fichier sur un serveur FTP. Pour cela je veux faire un batch, pour pouvoir le lancer cette nuit à télécharger.

Donc j'ai d'abord testé en DOS, cela fonctionne très bien, voici les commandes :
ftp
open monFTP.com
nomUtilisateur
pwdUtilisateur
cd MonRepertoire
lcd C:\
mget monFichier.txt
quit


Donc j'ai essayé d'automatiser cela dans un fichier batch ...

ftp
open monFTP.com
User nomUtilisateur pwdUtilisateur
lcd c:\
cd monRepertoire
mget monFichier.txt
quit
pause


Mais je reste bloqué sur la ligne ftp. Dans ma console j'ai une ligne ftp qui clignote, et si j'appuie sur entrée, j'ai à nouveau la même chose. Je pense que cela est normal puique la commande ftp est une appli.

Alors j'ai essayé d'externalisé la commande FTP. j'ai donc deux fichiers. un qui lance la commande ftp, et qui réccupère un le fichier de traitement. Ce fichier de traitement est exactement ce que je tapperais en commande dos.

mon fichier bat : ftp -s: "D:\Bureau\traitement.txt"

mon fichier de traitement :
open monFTP.com
monUtilisateur
monMotdePasse
lcd c:\
cd monReppertoire
mget monFichier.txt
quit
pause


Mais mon fichier bat ne lit pas le fichier de traitement. Savez-vous d'où l'erreur pourrait provenir ?

En attente de vosu lire en retour,

Cordialment

2berte

2 réponses

2berte
Messages postés
204
Date d'inscription
vendredi 17 novembre 2006
Statut
Membre
Dernière intervention
10 mai 2010
143
21 avril 2009 à 14:56
Merci, pour le lien j'ai pu m'autocorriger ! J'en ai pourtant chercher des solutions sur le net...

Alors je donne mon script final :

1er fichier : fichier .bat :
ftp -s:D:\Bureau\config.txt -n
-s indique le chemin du fichier de traitement à exécuter, attention il n'y a pas d'espace entre les ":" et le nom du fichier.
-n inque que l'authentification se fait manuellement, on ne la propose pas au départ.

2ème fichier : fichier de traitement :

open NomDuFTP
user login password
get test.txt
close
quit


Ce bout de code permet de télécharger un fichier test.txt placé à la racine du ftp. Il sera téléchargé dans le réperoire par défaut de l'utilisateurs (ex: C:\Users\XXX\test.txt).

Pour placer le fichier dans un autre répertoire, il suffit d'indiquer un autre chemin avec la commande lcd, par exemple lcd D:\MesDocs\

En espérant que ce bout de code puisse servir à d'autres personnes.

Cordialement

2berte
10
Merci , pour le retour !
0
merci pour le coup de pouce
0
Bonjour,

Voyez l'exeple ici : https://forum.hardware.fr/hfr/WindowsSoftware/ligne-commande-sujet_101423_1.htm
ca doit etre une erreur de commande : c'est get ou send.

Cordialement,
0