【发布时间】:2011-06-20 21:11:40
【问题描述】:
如何执行 Bash 命令并收集 Java 的输出?
大家好,基本上我正在编写一个基本的控制台应用程序,并希望能够从中运行命令,例如 sudo***、halt、ifconfig 等。
有什么见解吗?
【问题讨论】:
如何执行 Bash 命令并收集 Java 的输出?
大家好,基本上我正在编写一个基本的控制台应用程序,并希望能够从中运行命令,例如 sudo***、halt、ifconfig 等。
有什么见解吗?
【问题讨论】:
未经测试的代码:
Runtime run = Runtime.getRuntime();
Process pr = run.exec(bashcommand);
pr.waitFor();
BufferedReader buf = new BufferedReader(new InputStreamReader(pr.getInputStream()));
while ( ( String line ; line = buf.readLine() ) != null )
{
System.out.println(line);
}
【讨论】:
您可以为此目的使用processBuilder API。见this example。
【讨论】: