【发布时间】:2014-04-01 11:19:14
【问题描述】:
我想在java代码中调用一个unix系统命令,我写的代码是这样的:
String cmd = "split -a -d -b 10M test.txt";
Process execProc = Runtime.getRuntime().exec(cmd);
我希望当外部命令完成后,我可以继续执行下面的程序。如何实现?
【问题讨论】:
我想在java代码中调用一个unix系统命令,我写的代码是这样的:
String cmd = "split -a -d -b 10M test.txt";
Process execProc = Runtime.getRuntime().exec(cmd);
我希望当外部命令完成后,我可以继续执行下面的程序。如何实现?
【问题讨论】:
试试
execProc.waitFor();
这应该会阻塞,直到命令完成。另外也许你应该考虑使用ProcessBuilder,它为处理流程提供了更方便的API。
ProcessBuilder builder = new ProcessBuilder(command);
Process process = builder.start();
process.waitFor();
InputStream stream = process.getInputStream();
【讨论】: