【发布时间】:2014-05-08 13:07:32
【问题描述】:
我需要使用 sshj 库通过 ssh 在远程服务器上执行一些命令序列。
我愿意
Session session = ssh.startSession();
Session.Command cmd = session.exec("ls -l");
System.out.println(IOUtils.readFully(cmd.getInputStream()).toString());
cmd.join(10, TimeUnit.SECONDS);
Session.Command cmd2 = session.exec("ls -a");
System.out.println(IOUtils.readFully(cmd2.getInputStream()).toString());
它把我扔了
net.schmizz.sshj.common.SSHRuntimeException: 这个会话通道是 都用完了
但是我不能为每一个命令重新创建会话,因为这个例子会显示主目录列表,而不是 /some/dir 列表。
【问题讨论】:
-
可能你需要在执行下一个命令之前从
cmd.getInputStream()读取数据...