【问题标题】:SSH terminal in browser [closed]浏览器中的 SSH 终端 [关闭]
【发布时间】:2012-05-31 10:18:37
【问题描述】:

我想在网络浏览器中实现 ssh 终端客户端。我需要为 ruby​​ 中的 ssh 连接实现服务器。有一个 net/ssh 库,但我不知道如何处理像 vim 或午夜指挥官这样的全屏程序。

【问题讨论】:

  • 你的问题到底是什么?
  • 很抱歉造成混淆。我没有确切的问题要问,我只需要通过谷歌搜索找到实现我的应用程序的方向。

标签: ruby ssh terminal


【解决方案1】:

让我尝试重新解析您的问题:您正在尝试在 Web 浏览器上模拟 SSH 控制台会话。您似乎已经为大多数命令实现了简单的控制台输入/输出,但是当您尝试像“vim”或午夜指挥官这样的全屏命令时,似乎出现了垃圾。

您看到的问题与 UN*X 机器如何处理终端上的全屏控制台输出有关。全屏控制台应用程序参考 terminfo/termcap 库来确定清除屏幕、删除一行、插入一行、将光标放在特定点等所需的转义序列。你看到的是这些的原始输出为默认终端类型出现的转义序列,很可能是基于 ANSI 的。

要解决您的问题,您必须:

  1. 确定您的控制台应用程序模拟的终端类型 - 或者您可以将其强制为确定的。
  2. 通过查询 termcap/terminfo 数据库来解码终端类型的转义序列。
  3. 在您的网络浏览器应用程序上实现终端功能。

根据您用于实现浏览器应用程序的技术堆栈,您可能能够找到其他人开发的用于解决此问题的库。

【讨论】:

  • 感谢您重新分析我的问题,关键字“terminfo”和“termcap”正是我正在寻找的东西:)
猜你喜欢
  • 2021-08-04
  • 2013-12-24
  • 2013-12-24
  • 1970-01-01
  • 2015-04-23
  • 2010-12-29
  • 2014-05-11
  • 1970-01-01
  • 2011-04-12
相关资源
最近更新 更多