Java ProcessBuilder:捕获从Java运行的脚本运行的脚本输出

时间:2014-06-18 02:33:30

标签: java processbuilder

使用Java的ProcessBuilder,我可以运行外部脚本,并将其输出重定向到我的GUI。

        Process proc = pb.start();
        BufferedReader bri = new BufferedReader(new InputStreamReader(proc.getInputStream()));
        String line = "";
        while (proc.isAlive())
        {
          // bri may be empty or incomplete.
          while ((line = bri.readLine()) != null)
          {
            textArea.appendText(line);
          }
        }

现在,我正在运行的脚本也调用其他脚本和进程。应该捕获的其中两个当前显示在它们自己的xterm窗口中。是否有可能捕获这些输出,并以类似的方式显示?。

1 个答案:

答案 0 :(得分:0)

如果这些输出由源脚本管理,我认为它会起作用。作为建议,请看一下这篇文章:When Runtime.exec() won't 阅读它以了解如何正确使用外部过程是极其重要的。