Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous,
Je voulais lancer le téléchargement des fichiers qui se trouvent sur FTP en utilisant le Schuduler Task (tâches planifiée) . Pour cela j’ai crée une nouvelle tâche, j’ai lui donné la date d’exécution…
Le Schuduler Task lance chaque jour à 23 :00 un batch et ce dernier lance lui même le téléchargement des fichiers située dans le FTP.
J’ai essayé d’écrire mon batch, mais toujours j’arrive pas à lancer le téléchargement.
J’ai crée deux fichiers :
Dans le premier fichier (batch.bat) j’ai mis:
open D:\batch.cmd
ftp -s:D:\commandes.txt
Dans le deuxième fichier (commandes.txt) j’ai mis:
open nom_serveur_ftp
user
password
ha
bi
prompt off
cd dossier_ftp
mget mon_fichier.txt
bye
dans le gestionnaire des tâches planifié, j’ai mis le chemin de ficher batch.bat
@+
Dernière modification par mattdamon (13-10-2008 12:32:59)
Hors ligne
Cela fonctionne-t-il quand tu lances ton fichier de commandes à la main ?
Mis à part les classiques (impossible de résoudre le nom"nom_serveur_ftp", répertoires inexistants, etc.), je pense à une chose : quel est le compte qui exécute ton batch, et ce compte a-t-il l'autorisation d'accéder au réseau dans le contexte d'une session non interactive ?
Hors ligne
FMolinas a écrit:
Cela fonctionne-t-il quand tu lances ton fichier de commandes à la main ?
même je lance manuellement mon fichier il ne commence pas le téléchargement mais par contre il s'affiche dans le console(cmd) : connection successeful (seulement dans le cas ou j'ouvre une session FTP par IE ou FileZilla).
Dernière modification par mattdamon (13-10-2008 12:27:56)
Hors ligne
Bonjour,
Si j'ai compris, ton batch arrive à se connecter sur le serveur FTP par contre tu n'arrives pas à réaliser le transfert.
C'est certainement un problème entre les 2 modes de transfert possibles en FTP : actif ou passif. Le client ftp microsoft se connecte par défaut en mode actif et ton serveur FTP doit supporter uniquement le mode passif.
Dans ton fichier de commande FTP après le password tu rajoutes la commande : quote PASV pour passer le transfert en mode passif.
Hors ligne
Je ne sais pas si ça peut t'aider mais voilà comment je fais
Je crée un fichier de connection Script.txt
mon_loggin mon_password bin cd mon_dossier_ftp get mon_fichier.txt quit
Je crée un fichier bat
cd\ c: ftp -s:c:\script.txt 212.212.212.212 (IP du serveur)
Puis je lance un run(fichier.bat)
Hors ligne
Salut,
J'ai essayé les deux solutions de nico et de buck mais toujours il mets un fichier vide avec 0 Kbits
Hors ligne
Bonjour,
Le fichier à 0 KB est une classique du problème du mode actif/passif. La connexion sur le serveur FTP est correcte mais le transfert du fichier ne réussi pas.
La particularité du mode FTP est qu'il nécessite 2 ports pour travailler : 1 port pour la connexion et 1 port pour le transfert. Le mode passif nécessite d'avoir des Firewall "stateful" (Certaine ancienne box de FAI ne sont pas stateful et ne permette pas de réaliser de transfert FTP en mode passif).
Si, tu arrives à transférer sur le même poste avec Filezilla ou autres pour vérifier qu'il n'y a pas de problème de Firewall.
A ce moment, tu regardes la configuration de Filezilla et tu forces le mode actif et passif successivement pour déterminer qu'elle mode fonctionne et tu adaptes ton fichier batch en conséquence.
Hors ligne
buck a écrit:
Bonjour,
Le fichier à 0 KB est une classique du problème du mode actif/passif. La connexion sur le serveur FTP est correcte mais le transfert du fichier ne réussi pas.
La particularité du mode FTP est qu'il nécessite 2 ports pour travailler : 1 port pour la connexion et 1 port pour le transfert. Le mode passif nécessite d'avoir des Firewall "stateful" (Certaine ancienne box de FAI ne sont pas stateful et ne permette pas de réaliser de transfert FTP en mode passif).
Si, tu arrives à transférer sur le même poste avec Filezilla ou autres pour vérifier qu'il n'y a pas de problème de Firewall.
A ce moment, tu regardes la configuration de Filezilla et tu forces le mode actif et passif successivement pour déterminer qu'elle mode fonctionne et tu adaptes ton fichier batch en conséquence.
Il travaille en mode passif(il y a un check box = mode passif dans le Firewall setting).
est-ce que dois-je ajouter PASV devant mon password dans le fichier.
Hors ligne
Le sample en mode passif :
open mon_serveur mon_user mon_password quote pasv ha bi prompt off cd test mget test bye
Hors ligne
c'est resolu ?
Hors ligne
Bonjour à tous,
JCZ a écrit:
c'est resolu ?
En fait, j'ai utilisé toutes les deux solutions possibles que ce soit indiquées dans ce forum ou des autres conseils sur le net, mais toujours j'arrive pas à trouver la solutions.
Donc la seule solution qui reste est de voir avec l'administration réseau de notre société parce que nous sommes entrain d'utiliser un firewall (hard et soft), il se peux que l'administrateur bloque toute transfert FTP si on utilise un batch.
Dernière modification par mattdamon (17-10-2008 07:26:33)
Hors ligne