web-dev-qa-db-fra.com

Comment exécuter la commande avec des paramètres?

Comment exécuter une commande en Java avec paramètres?

J'ai essayé

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

ce qui ne fonctionne pas.

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

Cela ne fonctionne pas aussi bien, car le paramètre m n'est pas spécifié.

26
Alex

Voir si cela fonctionne (désolé, je ne peux pas le tester pour le moment)

Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
24
Chris Stratton

Utilisez ProcessBuilder au lieu de Runtime#exec().

ProcessBuilder pb = new ProcessBuilder("php", "/var/www/script.php", "-m 2");
Process p = pb.start();
22
Matt Ball

Les éléments suivants devraient fonctionner correctement.

Process p = Runtime.getRuntime().exec("php /var/www/script.php -m 2");
1
Codemwnci