在Java中,你可以使用ProcessBuilder
和Process
類來執行外部命令并獲取輸出結果。以下是一個簡單的示例:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ExecExample {
public static void main(String[] args) {
try {
// 創建一個ProcessBuilder對象,傳入要執行的命令和參數
ProcessBuilder processBuilder = new ProcessBuilder("your_command", "arg1", "arg2");
// 啟動進程
Process process = processBuilder.start();
// 獲取命令的輸出流
InputStreamReader inputStreamReader = new InputStreamReader(process.getInputStream());
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
// 讀取命令的輸出結果
String line;
StringBuilder output = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
output.append(line).append("\n");
}
// 關閉流
bufferedReader.close();
inputStreamReader.close();
// 等待進程執行完成
int exitCode = process.waitFor();
System.out.println("Command executed with exit code: " + exitCode);
// 輸出命令的結果
System.out.println("Output: " + output.toString());
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
請將your_command
替換為你要執行的外部命令,將arg1
和arg2
替換為相應的參數。這個示例將執行命令并獲取其輸出結果,然后將其打印到控制臺。注意,這個示例僅適用于Unix/Linux系統。如果你使用的是Windows系統,請將命令和參數更改為適用于Windows的命令和參數。