Melaksanakan Perintah Baris Perintah dengan Java
Apabila cuba melaksanakan hujah baris arahan menggunakan Java, adalah penting untuk memahami nuansa operasi yang berbeza sistem. Artikel ini bertujuan untuk menangani isu khusus yang dihadapi oleh pengguna Windows apabila cuba melaksanakan arahan CMD melalui Java.
Contoh yang diberikan dalam soalan menunjukkan percubaan untuk melaksanakan perintah "cd" dan "dir" melalui arahan baris menggunakan Java. Walau bagaimanapun, kaedah ini tidak memberikan hasil yang diharapkan. Untuk mengatasinya, pendekatan alternatif diperlukan.
Penyelesaian terletak pada membina proses Command Prompt (CMD) dan berkomunikasi secara interaktif dengannya melalui aliran input dan output. Ini membolehkan pelaksanaan lancar berbilang arahan dalam satu proses, seperti yang dilihat dalam kod berikut:
String[] command = {"cmd"}; Process p = Runtime.getRuntime().exec(command); // Thread to handle error stream new Thread(new SyncPipe(p.getErrorStream(), System.err)).start(); // Thread to handle input stream new Thread(new SyncPipe(p.getInputStream(), System.out)).start(); // PrintWriter to write to the output stream PrintWriter stdin = new PrintWriter(p.getOutputStream()); // Write the "dir" command stdin.println("dir c:\ /A /Q"); // Close the stdin stream stdin.close(); // Wait for the process to complete int returnCode = p.waitFor(); // Print the return code System.out.println("Return code = " + returnCode);
Pendekatan ini membolehkan pelaksanaan berbilang arahan dalam proses CMD, memberikan yang lebih cekap dan serba boleh cara berinteraksi dengan baris arahan dari Java.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Berbilang Perintah CMD dari Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!