通过Java启动远程Linux机器上的过程(脚本/可执行文件)

时间:2019-07-26 10:32:52

标签: java linux ssh remote-access

有没有一种方法可以允许从Java(网络)应用程序启动远程Linux应用程序上的进程?

它本身的Java(网络)应用程序正在Linux机器上运行(但Windows支持会很好)。
应该可以在远程Linux机器(仅Linux)上的操作系统级别上运行命令。
Java是否有内置的可能性使用ssh连接到另一台主机并运行命令并获取返回值stdout,stderr?

1 个答案:

答案 0 :(得分:0)

您可以使用ProcessBuilder按照以下方式使用bash运行命令(例如,使用ssh):

ProcessBuilder pb = new ProcessBuilder(new String{"/bin/bash", "-c", "ssh [ssh-options/commands]"});

Process pro = pb.start();

启动该过程后,您可以从中获取outputStream,errorStream和exitCode。

以下一些文档可以为您提供帮助:

Running ssh commands

ProcessBuilder use examples 1 (including use of Runtime.getRuntime to create a process)

ProcessBuilder use examples 2

希望您觉得这有用!