可以使用Java的ProcessBuilder
類來執行cmd命令并獲取返回結果。以下是一個示例代碼:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ExecuteCmdCommand {
public static void main(String[] args) {
try {
// 執行cmd命令
ProcessBuilder processBuilder = new ProcessBuilder("cmd.exe", "/c", "start /b your_command.exe");
Process process = processBuilder.start();
// 等待命令執行完成
int exitCode = process.waitFor();
// 獲取命令輸出
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
String secondLastLine = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
secondLastLine = line;
}
// 獲取倒數第二行信息
if (secondLastLine != null) {
System.out.println("Second last line: " + secondLastLine);
} else {
System.out.println("No second last line found.");
}
// 檢查命令執行狀態
if (exitCode == 0) {
System.out.println("Command executed successfully.");
} else {
System.out.println("Command execution failed.");
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
在上述代碼中,你需要將your_command.exe
替換為你要執行的應用程序或命令。這段代碼會執行命令,并逐行打印輸出結果。倒數第二行的內容將被存儲在secondLastLine
變量中,并在最后打印出來。