Executing Commands with Parameters in Java
Running commands from within Java applications often requires passing parameters along with the command. This can be achieved using the Runtime.getRuntime().exec() method, but it's important to understand how parameters are passed to ensure correct command execution.
Attempt with Named Parameter Assignment
An incorrect approach is to specify options as a single argument to exec(), like so:
String[] options = new String[]{"option1", "option2"}; Runtime.getRuntime().exec("command", options);
This method doesn't work because the command interpreter does not receive the parameters individually. Instead, they are treated as a single string argument.
Argument Passing with String Array
To pass parameters effectively, they must be specified as separate elements in a string array:
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php","-m","2"});
In this example, the first argument is the command to be executed, while the subsequent arguments are the parameters. This approach ensures that each parameter is correctly interpreted by the command interpreter.
Specifying Parameter Position
If the order of parameters is important, it can be crucial to specify their order explicitly in the array:
String[] args = {"command", "-option", "-value"}; Runtime.getRuntime().exec(args);
In this case, the first parameter is the command itself, the second parameter is an option, and the third parameter is the value associated with the option. By explicitly specifying their order, you ensure that the parameters are passed to the command in the correct order for proper execution.
Additional Notes
Atas ialah kandungan terperinci Bagaimanakah saya boleh menghantar parameter kepada arahan apabila melaksanakannya di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!