use*_*300 9 java bash shell synchronous
我试图从Java执行Bash Shell脚本,并使用这段代码运行良好.
public void executeScript() {
try {
new ProcessBuilder("myscript.sh").start();
System.out.println("Script executed successfully");
} catch (IOException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
上面的代码异步运行.但我想要实现的是同步执行代码.我希望Java进程等到脚本执行完成后再执行下一批代码.
总而言之,我希望在批处理文件("myscript.sh")完成执行后执行"打印语句 - 成功执行脚本" .
谢谢
Ell*_*sch 18
你要等待进程结束,这是WAITFOR()这样的
public void executeScript() {
try {
ProcessBuilder pb = new ProcessBuilder(
"myscript.sh");
Process p = pb.start(); // Start the process.
p.waitFor(); // Wait for the process to finish.
System.out.println("Script executed successfully");
} catch (Exception e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
26265 次 |
最近记录: |