使用java获取linux终端的输出?

时间:2014-03-19 07:40:36

标签: java linux stream terminal output

你好这里是我的代码,让我发送代码并收到结果,但我想看到的是一个脚本的过程,这段代码只显示那一刻的最后结果,而不是所有的日志。你能告诉我我的代码有什么问题吗?

try{

            JSch jsch = new JSch();
            Session session = jsch.getSession(user, host, 22);
            session.setPassword(password);
            session.setConfig("StrictHostKeyChecking", "no");
            session.connect(10*1000);
            Channel channel = session.openChannel("shell");
            InputStream is = new ByteArrayInputStream("command".getBytes());
            channel.setInputStream(is);
            channel.setOutputStream(System.out);

            channel.connect(15 * 1000);
            session.connect(10*1000);

            // Disconnect (close connection, clean up system resources)
            channel.disconnect();
            session.disconnect();
        }
        catch (Exception ex) {
             System.out.println("Exception found while streaming.");
        }

1 个答案:

答案 0 :(得分:0)

这可能是一个很长的过程,但为什么不使用调试器来调试代码呢?您是使用IDE开发的吗?如果是这种情况,大多数情况下java调试器都与它们内置。如果这是另一个代码的一部分,请将此部分转换为java类的main方法并对其进行调试。