我正在编写一个程序来使用 ssh 连接到远程服务器并为用户提供 shell 终端。
我已经尝试过 JSch 和 sshj —— 两者都可以正确连接,但只需将它们的 shell 通道的输入/输出流连接到 System.in 和 System.out 就会产生时髦的输出。我知道为什么——JSch 和 sshj 的文档都说它们没有内置终端仿真,所以输入/输出很难看。(sshj 将此实现称为“基本 PTY”)
我还有一些终端仿真器可供选择:JTerm、DragonConsole 和 Terminator。
我的目标是启动终端仿真器窗口并执行类似于将输入/输出流从 shell 通道插入仿真器的操作。
诸如建议我自己处理与 shell 通道的输入/输出以摆脱垃圾字符的方法之类的替代方案也将受到赞赏——这是主要问题。