In Java, executing commands with parameters can be achieved through the Runtime.getRuntime().exec() method. However, there are certain nuances to consider when specifying parameters effectively.
The following code attempts to execute the PHP command with a parameter, but it does not work:
Process p = Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php -m 2"});
The issue here lies in the way parameters are passed to the command. The -m parameter needs to be specified as a separate argument, as shown below:
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
Now, the PHP command will be executed with the parameter -m 2 as intended.
Another attempt to use the exec() method with an options array is also unsuccessful:
String[] options = new String[]{"option1", "option2"}; Runtime.getRuntime().exec("command", options);
The reason this code fails is that the parameters are not properly separated. The command itself is specified as a string, and the options array contains additional parameters. To execute the command with these parameters, they need to be concatenated into a single string.
For instance, to execute the command "command" with options "option1" and "option2", the following code can be used:
Runtime.getRuntime().exec(new String[]{"command", "option1", "option2"});
By adhering to the proper syntax and separation of parameters, the exec() method can be effectively utilized to execute commands with parameters in Java.
以上是Java執行指令時如何有效傳遞參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!