需要从webapp执行shell脚本并在页面中显示控制台输出

时间:2009-01-09 17:13:40

标签: java web-applications shellexecute

我正在寻找可以帮助我将它集成到Struts2 / Spring应用程序中的java示例或库。许多构建系统,如Luntbuild或Hudson都有这个功能,我想我会问,如果有人知道一个独立的例子,我试图从其中一个中挖掘它。我也看了一眼Quartz作业调度框架,但我还没有找到UI挂钩。我只需要从包含JSP的文件中读取吗?

1 个答案:

答案 0 :(得分:2)

如果我理解你要做什么,这是Java中的一种方式。这将执行ls命令,然后捕获shell输出并将其写回System.out。

public class TestShell {
    public static void main(String[] args)
    {
        try
        {
                String cmd = "ls\n";
                Process p = Runtime.getRuntime().exec(cmd);
                p.waitFor();
                BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
                while(r.ready()) {
                    System.out.println(r.readLine());
                }

        }
        catch (Throwable t)
                {
                t.printStackTrace();
        }
    }
}