从Linux调用Windowsbatch file

我有一个只在Windows上运行的应用程序和一个启动它的batch file。 我想从Linux调用这个batch file,这意味着像Linux批处理将启动带有参数的Windows批处理,然后运行我的应用程序。

我可以这样做吗? 怎么样?

Solutions Collecting From Web of "从Linux调用Windowsbatch file"

你可以在Windows中安装一个ssh服务器(Cygwin有一个),然后从linux做一些事情:

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

并且应该在Windows窗口中启动您的应用程序。

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

根据您的时间需求的精确程度,您可能会定期(每5分钟?)运行一个窗口框,并在运行时查看某个文件是否存在,并删除该文件。 然后你可以使用Samba / smbclient创建文件。 您将需要打开窗户框上的文件共享,以使其工作。

如果Windows有一个Web服务器,你可以编写一个CGI ,并使用wget或cURL触发它。

我们的构建过程正好相反:一个Windows服务器使用plink( PuTTY的一部分)在Linux服务器上启动。 你也许可以设置类似的东西。

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

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

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

有一种方法可以直接在Linux上运行批处理文件。 这篇文章解释了如何( http://www.linux.org/threads/running-windows-batch-files-on-linux.7610/ )。