在 Windows 服务器上执行自动 scp

在 Windows 服务器上执行自动 scp

我需要从 Windows 2012 服务器到 Linux 服务器执行自动 scp(每两小时一次)。我知道如何从 Linux 服务器到另一台 Linux 服务器执行此操作(ssh 和 cron)。

在 Windows 上,我需要什么工具?我知道 ssh 不是 Windows 上的原生工具,所以我想使用类似的工具。

答案1

您使用 WinSCP 和 Windows 计划任务。WinSCP 的站点上有关于编写脚本和自动化的指南:http://winscp.net/eng/docs/scripting

您还必须设置私钥,因此不需要密码。

答案2

您可以使用控制协议实用程序来处理文件传输。设置身份验证密钥以便无需输入密码即可登录。

为了处理时间,请创建一个计划任务,按照所需的计划执行 pscp 命令(或批处理文件)。

答案3

您可以在 Windows 2012 服务器上安装 OpenSSH。以下是相关页面在 WinSCP(Windows 的 SCP 客户端)网站上。

完成此操作后,只需从 Linux 目标服务器设置一个 cron 作业,即可从 Windows 2012 源服务器获取文件。(这比反过来更容易,尤其是因为你说你已经知道如何做到这一点。)

答案4

只需使用任何可编写脚本的 Windows SCP(或更好的 SFTP)客户端。

例如温SCP支持脚本和 SCP/SFTP。

自动将文件传输到 FTP 服务器

使用 WinSCP 上传文件的简单批处理文件如下所示:

winscp.com /log=c:\path\ftp.log /command ^
    "open sftp://user:[email protected]/" ^
    "put c:\local\path\* /remote/path/" ^
    "exit"

您可以拥有WinSCP GUI 生成的批处理文件为你。


对于调度,只需使用 Windows Scheduler。
有关详细信息,请参阅安排文件传输到 FTP 服务器

(我是 WinSCP 的作者)

相关内容