我使用批处理文件进入 WinSCP。 .bat
读取包含以下内容的脚本文件:
cd /download/.stuff
get file.txt D:\Name\Sub Name\Even Lower
更改目录很好,找到文件很好,但是当将它放在本地计算机上的子文件夹目录中时,我收到此错误
Can't get attributes of file ' D:\Name\Sub Name\Even'.
No such file or directory
我认为语法是正确的。
它没有放入该子文件夹的任何原因?
谢谢
最佳答案
正如@Rub 提到的,它是空格。您需要将带空格的路径用双引号括起来。此外,您需要用反斜杠终止路径。否则它会将文件下载到文件 Even Lower
在本地目录 D:\Name\Sub Name
.但我假设您希望它下载到 D:\Name\Sub Name\Even Lower
,保留名称 file.txt
.
这是正确的语法:
get file.txt "D:\Name\Sub Name\Even Lower\"
一些引用:
https://winscp.net/eng/docs/scripting#syntax
https://winscp.net/eng/docs/scriptcommand_get
您收到的错误消息没有多大意义。尝试相同时,我得到:
Can't get attributes of file 'D:\Name\Sub'
No such file or directory.
这很有意义,因为您的命令意味着:下载三个远程文件
file.txt
, D:\Name\Sub
和 Name\Even
到本地文件 Lower
在本地当前工作目录中(相互覆盖)。所以它找不到远程文件D:\Name\Sub
.
关于batch-file - 使用 WinSCP 将文件下载到本地子文件夹时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16421240/