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
パラメータが指定されていないため、これも機能しません。
これが機能するかどうかを確認してください(申し訳ありませんが、現在テストできません)
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
Runtime#exec()
の代わりに ProcessBuilder
を使用します。
ProcessBuilder pb = new ProcessBuilder("php", "/var/www/script.php", "-m 2");
Process p = pb.start();
以下は正常に動作するはずです。
Process p = Runtime.getRuntime().exec("php /var/www/script.php -m 2");