Dalam Java, melaksanakan arahan dengan parameter boleh dicapai melalui kaedah Runtime.getRuntime().exec(). Walau bagaimanapun, terdapat nuansa tertentu yang perlu dipertimbangkan apabila menentukan parameter dengan berkesan.
Kod berikut cuba untuk melaksanakan perintah PHP dengan parameter, tetapi ia tidak berfungsi:
Process p = Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php -m 2"});
Isu di sini terletak pada cara parameter dihantar ke arahan. Parameter -m perlu dinyatakan sebagai hujah yang berasingan, seperti ditunjukkan di bawah:
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
Kini, arahan PHP akan dilaksanakan dengan parameter -m 2 seperti yang dimaksudkan.
Satu lagi percubaan untuk menggunakan kaedah exec() dengan tatasusunan pilihan juga tidak berjaya:
String[] options = new String[]{"option1", "option2"}; Runtime.getRuntime().exec("command", options);
Sebab kod ini gagal ialah parameter tidak dipisahkan dengan betul. Perintah itu sendiri ditentukan sebagai rentetan, dan tatasusunan pilihan mengandungi parameter tambahan. Untuk melaksanakan arahan dengan parameter ini, ia perlu digabungkan menjadi satu rentetan.
Sebagai contoh, untuk melaksanakan perintah "perintah" dengan pilihan "option1" dan "option2", kod berikut boleh digunakan :
Runtime.getRuntime().exec(new String[]{"command", "option1", "option2"});
Dengan mematuhi sintaks dan pemisahan parameter yang betul, kaedah exec() boleh digunakan dengan berkesan untuk melaksanakan arahan dengan parameter dalam Java.
Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Parameter dengan Berkesan Apabila Melaksanakan Perintah di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!