如何在另一台机器上执行bat文件并在Java中获取输出

时间:2016-10-03 11:00:05

标签: java rmi

我需要在另一台计算机上执行Windows .bat文件。我知道:

  1. 远程计算机的IP地址,
  2. 可执行文件位置。
  3. 如何执行该特定文件以及如何获取其输出?

    两台机器都运行Windows。

    我已经看到了这些链接:

    http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/hello/hello-world.html http://www.onezerozeroone.eu/html/rmi_howto.html

    但我仍然不清楚如何开始?

1 个答案:

答案 0 :(得分:1)

你不能只使用Java和RMI。

由于显而易见的原因,除非将该计算机设置为允许这种访问,否则无法在远程计算机上运行代码。否则,任何人都可以随时在您的机器上运行任何东西!

如果它是您要运行的.bat文件,那么您应该考虑在另一台计算机上设置类似ssh服务器的内容。这样,您的机器就可以通过ssh连接到它(如果您愿意,可以使用Java库),执行.bat文件并捕获输出。

但如果它不需要是.bat文件,并且您只想在远程计算机上触发一些自己的代码,那么您可以编写一个(Java)应用程序来在远程计算机上运行机器并在特定端口上侦听指示其计算内容的消息,然后返回结果。

这几乎是所有远程服务的标准模式,包括Web服务器。