使用存在问题的Java通过SSH连接到网络站

时间:2019-02-07 10:23:25

标签: java ssh

我正尝试连接到具有IP地址,用户名和密码的设备的Network station。

该站有一个特定的命令来运行,而不是任何命令,例如:“ ls”命令将不运行。它必须是其命令之一

当我使用腻子连接到该工作站时,一切都很好。 此PS

This is When using Putty to connect

我正在使用Java代码使用com.jcraft.jsch库通过SSH连接到该工作站。 在连接中,我正在检查session.isConnected()是否返回false的true,但它返回true。所以到目前为止,一切都很好。

但是在这一部分:

InputStream in = channelExec.getInputStream();
BufferedReader reader = new BufferedReader(InputStreamReader(in));
line = reader.readLine();

在line = reader.readLine()处花费了大量时间,并且此后没有输出,异常或其他任何东西。

有人有什么主意吗?

Screenshot of the code and output

1 个答案:

答案 0 :(得分:0)

自从您将两个语句都写完之后,如下所示:-

System.out.println("############# - " + reader.read());
String line;
line = reader.readLine();

因此,在任何计算或其他任何事情上都不会花费大量时间。是用户(您)应该在提示中输入两次。 您可以尝试按两次Enter键!