从Linux调用Windows批处理文件

时间:2008-10-26 13:31:17

标签: windows linux

我有一个只在Windows上运行的应用程序和一个启动它的批处理文件。 我想从Linux调用这个批处理文件,这意味着像Linux批处理这样的东西会启动带有参数的windows批处理,而这又会运行我的应用程序。

我能这样做吗?怎么样?

5 个答案:

答案 0 :(得分:12)

你可以在windows框中安装一个ssh服务器(Cygwin有一个),然后从linux执行以下操作:

ssh user@windows-box c:/path/to/batch.cmd

那应该在windows框中启动你的应用程序。

答案 1 :(得分:1)

最直接的方法可能是在Windows机器上安装ssh服务器。 Cygwin包含一个ssh服务器。

根据您的计时需求的精确程度,您可能会在Windows框上有一个“at”作业,它定期运行(每隔5分钟?)并在它看到特定文件存在时运行,删除文件。然后,您可以使用Samba / smbclient来创建文件。您需要在Windows框中打开文件共享才能使其正常工作。

如果Windows框中有Web服务器,您可以编写CGI,然后使用wgetcURL触发它。

答案 2 :(得分:0)

我们的构建过程目前采用另一种方式:Windows服务器使用plink(PuTTY的一部分)在Linux服务器上启动。你可以设置类似的东西。

答案 3 :(得分:0)

这可能会导致安全问题。我们的信息安全人员不允许我直接调用任何程序。

更安全的方法是在Windows计算机上设置服务器。例如,这可以是Web服务器。然后在PHP / Perl / Python脚本中调用您的进程。

答案 4 :(得分:0)

另请查看winexe,它允许您在不运行ssh服务器的情况下执行Windows命令/批处理脚本。