Diese Frage hat hier bereits eine Antwort:
Erwägen:
D:\Program Files\FileZilla FTP Client\filezilla.exe -c 0/GG/DG/ -a "K:\YY\XXXXX\AAAA\BB\idS.txt"
Dieser Code funktioniert nicht wie folgt:
"PFAD NICHT GEFUNDEN" K: \ YY \ XXXXX \ AAAA \ BB \ idS.txt
jedoch
D:\Program Files\FileZilla FTP Client\filezilla.exe -c 0/GG/DG/ -a "K:\YY\XXXXX\AAAA\BB"
Stellt nur eine Verbindung zu der gewünschten FTP-Site her, ohne dass eine Datei übertragen wird.
Warum funktioniert es nicht?
Antworten:
FileZilla verfügt weder über Befehlszeilenargumente noch über andere Methoden, die eine automatische Übertragung ermöglichen. Siehe:
FileZilla Client-Befehlszeilenargumente
https://trac.filezilla-project.org/ticket/2317
Wie sende ich eine Datei mit FileZilla über die Befehlszeile?
Sie können jedoch jeden anderen Client verwenden, der die Automatisierung ermöglicht. Sie haben nicht angegeben, welches Protokoll Sie verwenden, FTP oder SFTP.
Sie werden auf jeden Fall WinSCP verwenden können, da es alle Protokolle unterstützt, die FileZilla (und mehr) unterstützt.
Siehe https://winscp.net/eng/docs/guide_automation
Ein typisches WinSCP-Skript für den Upload sieht folgendermaßen aus:
Um das Skript auszuführen, verwenden Sie:
Dies ist für SFTP. Wenn Sie FTP verwenden, ersetzen Sie das
sftp://
durch dasftp://
und entfernen Sie das-hostkey=...
Mit WinSCP 5.9 kann aus einer importierten FileZilla-Sitzung ein Skript generiert werden .
Weitere Informationen finden Sie in der Anleitung zur FileZilla-Automatisierung .
(Ich bin der Autor von WinSCP)
Eine andere Option, wenn Sie SFTP verwenden, ist der psftp-Client:
https://the.earth.li/~sgtatham/putty/latest/htmldoc/Chapter6.html#psftp
quelle
-a
teilt dem FileZilla-Client mit, wo lokale Dateien ausgeführt werden sollen. Das heißt, hier sollten Dateien standardmäßig heruntergeladen oder von dort hochgeladen werden (wenn im Übertragungsbefehl selbst keine bestimmten Pfade verwendet werden).Es erwartet einen Pfad zu einem Ordner.
Aus der FileZilla-Dokumentation :
FileZilla ist nicht für die Skripterstellung vorgesehen (Ziel ist es, ein GUI-Client zu sein). Daher gibt es keine Möglichkeit, Dateien anzugeben, die über die Befehlszeile übertragen werden sollen.
Vielleicht sollten Sie die in Windows integrierten
FTP.exe
Skripte verwenden.Von
ftp /?
:quelle