Das WinSCP-Skript kann die Datei nicht an einen Remote-Speicherort übertragen

Das WinSCP-Skript kann die Datei nicht an einen Remote-Speicherort übertragen

Wenn ich versuche, mit dem WinSCP-Client ein kleines Skript auszuführen, wird beim Übertragen der Datei auf den Remote-Server der folgende Fehler ausgegeben und der Abbruch erfolgt.

Fehlermeldung

C:\WinSCP-5.9.6-Portable>WinSCP.com /script=ftptest.txt
Connecting to 192.169.2.33 ...
Connected
Starting the session...
Session started.
Active session: [1] [email protected]
transfer        ascii
\...\audit.log.2018-04-10 |            0 B |    0.0 KB/s | binary |   0%
Error transferring file '\\MainShare\FDS\WS02\Logs\WhvEsbWrk2.MainShare.co.uk\audit.log.2018-04-10'.
Copying files to remote side failed.
Could not create file.
(A)bort, (R)etry, (S)kip, Ski(p) all: Abort

Skript, das ich ausprobiert habe

open ftp://ftpuser:[email protected]/ -hostkey="ssh-rsa 2048 ************************ ftpuser@Filezilla"
ascii
put -transfer=ascii \\MainShare\DFS\WS02\Logs\WhvEsbWrk2.MainShare.co.uk\audit.log.2018-04-10 /home/ftpuser/DK
exit

Antwort1

Angenommen, es /home/ftpuser/DKhandelt sich um ein Verzeichnis, fehlt ein abschließender Schrägstrich. Sie sollten Folgendes verwenden:

put -transfer=ascii \\...\audit.log.2018-04-10 /home/ftpuser/DK/

Wenn Sie nur das verwenden /home/ftpuser/DK, bedeutet dies, dass Sie die Datei in das Verzeichnis hochladen /home/ftpuserund in der Datei speichern möchten DK. Was offensichtlich mit einem vorhandenen Unterverzeichnis gleichen Namens in Konflikt steht.

Zitieren der Dokumentation für dieputBefehl:

Der letzte Parameter gibt das Ziel-Remoteverzeichnis und optional die Operationsmaske an, um die Datei(en) unter einem anderen Namen zu speichern.Das Zielverzeichnis muss mit einem Schrägstrich enden.

verwandte Informationen