在Java中執行sh文件可以使用ProcessBuilder類來實現。下面是一個簡單的示例代碼:
import java.io.IOException;
public class ExecuteShellScript {
public static void main(String[] args) {
try {
// 創建ProcessBuilder對象,并指定要執行的命令和參數
ProcessBuilder pb = new ProcessBuilder("sh", "/path/to/your/script.sh");
// 設置工作目錄(可選)
pb.directory(new File("/path/to/your/directory"));
// 啟動進程并等待執行完成
Process process = pb.start();
int exitCode = process.waitFor();
// 打印執行結果
System.out.println("執行結果: " + exitCode);
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
在上面的示例代碼中,通過創建ProcessBuilder對象,并指定要執行的命令和參數來執行sh文件。你需要將/path/to/your/script.sh
替換為你實際的sh文件路徑。如果需要指定工作目錄,可以使用pb.directory(new File("/path/to/your/directory"))
來設置,否則可以省略。最后,通過調用pb.start()
啟動進程,并通過process.waitFor()
等待進程執行完成。執行結果可以通過process.exitValue()
獲取。