2014-11-07 20 views
1

我的Windows上有一个CI系统来构建我的服务器代码。我可以使用Windows命令行使用ssh到Mac而不使用其他工具如putty?

现在,我也想每天自动创建我的IOS项目,但它只能在Mac系统中构建。

因此,我编写了一个shell脚本,可以在我的Mac上构建我的ios项目,并且我想从Windows远程执行我的脚本。

如何在Windows上编写批处理文件以远程访问我的Mac并在那里执行脚本? 因此,我可以让我的CI系统每天自动执行该批处理文件。

或者......有没有人有更好的方法来做这件事?

谢谢!

回答

1

从PuTTY下载页面获取“plink”。将命令放入Windows计算机上的文件(例如“maccommands.txt”)中,将Mac shell脚本启动。然后,让包含一个批处理文件:

plink -l macusername -m maccommands.txt your.mac.ip.address 

如果你不想每次都被提示输入密码呢,你能与使用PuTTYgen空密码公私密钥对。将私钥保存为“pc_rsa.ppk”(或任何你想要调用的私钥)。将公共密钥从PuTTYgen窗口复制到剪贴板,并将其粘贴到文本编辑器中并保存(例如“pc_rsa_pub.txt”)。

然后用公钥将文件传输到Mac,并将其内容添加到〜/ .ssh/authorized_keys的末尾,例如,与cat pc_rsa_pub.txt >> ~/.ssh/authorized_keys 然后将-i pc_rsa.ppk添加到上面的plink命令以使用您的私钥。

(这显然有安全隐患,所以保护私钥文件。你也可以使用-pw password但作为密码将是你的批处理文件中清晰可见。具有更大的安全隐患)

+0

由于小包装实用!我试过命令:plink -l MyIP -l MyName -pw MyPassword -m test.txt,但我得到一个致命错误,说:服务器拒绝启动一个shell /命令。我无法弄清楚发生了什么?我的test.txt只是写了“ls -al”作为测试命令 – 2014-11-10 11:47:50

+0

哦!我通过更改-s来修复它,现在我可以完成我想要的东西!谢谢 – 2014-11-12 08:48:15

1

另一种解决方案是使用openssh。好处是不必为密钥使用其他格式。您可以安装Git for Windows。在安装过程中,选择第三种可以从命令行使用“unix”工具的选项。

我有一个加载代理内存github(#selfplug)

相关问题