Je crée un script à la volée pour ftp certains fichiers d'un ordinateur distant. Je crée un fichier qui est ensuite appelé à partir de la ligne de commande avecComment spécifier les répertoires FTP source et de destination dans une tâche de script?
ftp -s:filename proxy
où filename est le fichier que je viens de créer. Le fichier a un code semblable au suivant:
[email protected] address
username
prompt off
binary
cd c:\destination directory
mget c:\source directory\*.*
quit
Cela ne fonctionne pas. Ce qui suit n'est pas non plus:
[email protected] address
username
prompt off
binary
cd c:\source directory
mput c:\destination directory
quit
De toute évidence, je ne suis pas si bon à ftp. Comment, dans quel ordre, où dans mon fichier dois-je spécifier l'endroit où je veux que les fichiers soient placés (répertoire de destination, et aussi d'où le processus ftp est en cours d'exécution), et d'où je veux que les fichiers viennent (adresse IP ordinateur qui a des fichiers que je veux). Dois-je définir le répertoire avant de démarrer le processus ftp? Je l'exécute dans un paquet SSIS, et je n'utilise pas la tâche ftp de SSIS, parce que je ne veux pas d'échec si aucun fichier n'est trouvé. S'il n'y a rien, c'est cool. S'il y a quelque chose, je veux une copie.
(Il fonctionnait dans mon domaine de développement, et maintenant, quand j'essaye d'obtenir des fichiers d'un serveur auquel je n'ai vraiment pas accès, sauf ftp, je ne reçois rien. Voir How to avoid SSIS FTP task from failing when there are no files to download? pour un plus tôt, question connexe.)
Mise à jour: Les deux réponses ci-dessous, répertoriant lcd et cd, sont correctes. Cependant, mon exemple a encore échoué, jusqu'à ce que j'ai remplacé les barres obliques inverses par des barres obliques. En d'autres termes, mon dernier, le résultat de travail est la suivante:
[email protected] address
username
prompt off
binary
lcd /destination directory
cd /source directory
mget *.*
quit
Non, j'essaie de copier des fichiers de l'ordinateur A vers l'ordinateur B en exécutant le script depuis l'ordinateur B. – thursdaysgeek