我需要从Windows 2012服务器到Linux服务器执行自动化的scp(每两个小时)。 我知道如何从Linux服务器到另一台Linux服务器(ssh和cron)。
在Windows上,我需要什么工具? 我知道ssh在Windows上不是原生的,所以我想用一个类似的工具。
您使用WinSCP和Windows计划的任务。 WinSCP的网站有脚本和自动化的指南: http : //winscp.net/eng/docs/scripting
你也将不得不设置私钥,所以不需要密码。
您可以在Windows 2012服务器上安装OpenSSH。 以下是 WinSCP(Windows客户端)网站上的相关页面 。
完成之后,只需从Linux目标服务器设置一个cron作业,即可从Windows 2012源服务器获取文件。 (这比其他方式更容易,特别是因为你说你已经知道如何做到这一点。)
您可以使用pscp实用程序来处理文件传输。 设置validation密钥,无需input密码即可login。
要处理计时,请创build一个计划任务,以按照所需的计划执行pscp命令(或batch file)。
Grant可能有首选的方法,但如果你不想学习WinSCP的脚本语言,那么你可以安装Cygwin并直接运行scp 。 使用任务计划程序启动scp 。 (你可能需要创build一个中介.bat或.sh文件来根据参数实际执行scp 。)如果需要的话,也可以在后面用Cygwin设置sshd 。
只需使用任何可编写脚本的Windows SCP(或更好的SFTP)客户端。
例如, WinSCP支持脚本和SCP / SFTP。
请参阅自动将文件传输到FTP服务器 。
使用WinSCP上传文件的简单batch file如下所示:
winscp.com /log=c:\path\ftp.log /command ^ "open sftp://user:[email protected]/" ^ "put c:\local\path\* /remote/path/" ^ "exit"
您可以让WinSCP GUI为您生成batch file 。
对于计划,只需使用Windows计划程序。
有关详细信息,请参阅将文件传输到FTP服务器
(我是WinSCP的作者)