当我尝试使用下面的 WinSCP 客户端运行一个小脚本时,将文件传输到远程服务器时出现错误并中止。
错误信息
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
我尝试过的脚本
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
答案1
假设/home/ftpuser/DK
是目录,则缺少尾部斜杠。您应该使用:
put -transfer=ascii \\...\audit.log.2018-04-10 /home/ftpuser/DK/
当您仅使用 时/home/ftpuser/DK
,这意味着您要将文件上传到目录/home/ftpuser
并将其保存到文件DK
。这显然与现有的同名子目录冲突。
引用文档put
命令:
最后一个参数指定目标远程目录和可选的操作掩码,以不同的名称存储文件。目标目录必须以斜杠结尾。