2011-08-20 6 views
21

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

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

Ne fonctionne pas. Ne fonctionne aussi pas, car il ne spécifie pas le paramètre "m".

Répondre

19

Voir si cela fonctionne (désolé ne peut le tester en ce moment)

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

Ce qui suit devrait fonctionner correctement.

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

Utilisation ProcessBuilder au lieu de Runtime#exec().

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

Non testé, BTW. –

+1

Ne connaissait pas ProcessBuilder. Merci d'avoir partagé. –

+1

Si cela ne fonctionne pas: 'new ProcessBuilder (" php "," /var/www/script.php "," -m "," 2 ");' –

Questions connexes