【问题标题】:Getting output of linux terminal using java?使用java获取linux终端的输出?
【发布时间】:2014-03-19 07:40:36
【问题描述】:

您好,这是我的代码,它让我发送代码并接收结果,但我想看到的是脚本的过程,此代码仅显示当时的最后结果,而不是所有日志。你能告诉我我的代码有什么问题吗?

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

【问题讨论】:

  • "你能告诉我我的代码有什么问题吗?"- catch(Exception e){e.printStackTrace();} ?

标签: java linux stream terminal output


【解决方案1】:

这可能是一个很长的镜头,但你为什么不使用调试器来调试你的代码呢?您是否使用 IDE 进行开发?如果是这种情况,大多数时候 java 调试器都是内置的。如果这是另一个代码的一部分,则将此部分放入 java 类的 main 方法中并对其进行调试。

【讨论】:

    猜你喜欢
    • 2019-01-06
    • 2013-02-01
    • 1970-01-01
    • 2011-03-14
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多