微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WinSCP - 从 SFTP 服务器下载文件到网络位置,然后删除

如何解决WinSCP - 从 SFTP 服务器下载文件到网络位置,然后删除

我需要编写一个 WinSCP 脚本或批处理文件来下载远程 SFTP 文件夹的内容删除内容,然后上传到映射的网络文件夹。我知道如何编写脚本的登录部分。但是我对特定的命令行应该是什么样子感到困惑。从我读过的命令脚本下载和删除文件是这样的:

get -delete -transfer=binary *

我没有得到的部分是上传到网络文件夹命令。我知道 put 是 WinSCP 上传命令操作符。但是我如何将它与网络文件夹位置文件应该上传到一起使用?另外,这可以在批处理文件中编写脚本还是批处理文件和脚本需要单独编写?谢谢!

解决方法

“上传”到映射的网络文件夹不是 WinSCP 的工作。映射的网络文件夹充当本地驱动器。一个普通的 Windows copy 命令就可以了。因此,首先下载 WinSCP,然后将文件复制(实际上并不称为上传)到网络驱动器。

winscp /ini=nul /command ^
    "open sftp://user:password@example.com/" ^
    "get -delete /sftp/path/* c:\local\drive\path\" ^
    "exit"

copy c:\local\drive\path\* n:\mapped\network\drive\path\

不过,如果您在本地不需要这些文件,您可以让 WinSCP 将文件从 SFTP 文件夹直接下载到映射的网络驱动器:

winscp /ini=nul /command ^
    "open sftp://user:password@example.com/" ^
    "get -delete /sftp/path/* n:\mapped\network\drive\path\" ^
    "exit"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。