0

我知道您可以使用以下命令通过 Bash 终端运行脚本:

ssh -n -f user@host "sh -c 'nohup /path/to/file/test.sh > /path/to/file/test.out 2>&1 &'"

当我们使用以下 java 命令运行相同的命令时:

Runtime.getRuntime().exec( "comand" ).waitFor();

它不起作用。为了对此进行测试,我正在运行一个简单的 .sh 脚本,该脚本打印“hello world”并将其输出到“test.out”文件。我没有收到运行时错误,只是没有看到该输出。

注意:我在“命令”区域中正确放置了“\”转义字符。

我们如何使用 java 来做到这一点?

4

1 回答 1

0

我认为您需要传入要在其中运行命令的 shell 的路径。然后您可以尝试该方法的其他重载版本,并清楚地分开不同的部分:

Java 运行时 API

运行时示例

于 2013-03-29T07:34:12.010 回答