Java 如何使用参数执行命令?

Java 如何使用参数执行命令?,java,parameters,exec,runtime.exec,Java,Parameters,Exec,Runtime.exec,如何在Java中使用参数执行命令 我试过了 Process p = Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php -m 2"}); 这不管用 String[] options = new String[]{"option1", "option2"}; Runtime.getRuntime().exec("command", options); 这也不起作用,因为没有指定m参数。以下操作应该可以正常工作 Pr

如何在Java中使用参数执行命令

我试过了

Process p = Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php -m 2"});
这不管用

String[] options = new String[]{"option1", "option2"};
Runtime.getRuntime().exec("command", options);

这也不起作用,因为没有指定
m
参数。

以下操作应该可以正常工作

Process p = Runtime.getRuntime().exec("php /var/www/script.php -m 2");
使用而不是
运行时#exec()

看看这是否有效(抱歉,现在无法测试)


我不知道ProcessBuilder。感谢分享。如果这不起作用:
newprocessbuilder(“php”)、“/var/www/script.php”、“-m”、“2”)这应该提到,为每个命令设置一个
String
非常重要;参数或值。所以
“-m2”
可能不起作用。这需要是
“-m”,“2”
ProcessBuilder pb = new ProcessBuilder("php", "/var/www/script.php", "-m 2");
Process p = pb.start();
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});