如何执行Bash命令并从Java收集输出?

时间:2011-02-03 18:32:43

标签: java bash process command

如何执行Bash命令并从Java收集输出?

大家好,基本上我正在编写一个基本的控制台应用程序,并且希望能够从中运行命令,例如sudo ***,halt,ifconfig等。

任何见解?。

2 个答案:

答案 0 :(得分:13)

您可以使用processBuilder API来实现此目的。请参阅this example

答案 1 :(得分:3)

  

未经测试的代码:

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);
}