基于 telnet 的程序如何向套接字服务器报告其终端类型?

基于 telnet 的程序如何向套接字服务器报告其终端类型?

我编写了一个名为的脚本,tcpserver它大量使用tput和类似的命令。这些命令需要知道如何正确地写入终端并依靠变量TERM来获取此信息。现在TERM变量是从启动控制台继承的tcpserver,我想改变这一点。

我的客户端是基于 telnet 的终端程序,如netcattelnet。我怎样才能让这些程序将用户的终端类型传达给远程服务器?

答案1

您正在寻找的是所谓的“终端类型协商”,通常缩写为“termtype”。这允许支持 telnet 的客户端软件使用 telnet 转义协商带外的终端类型。

对于客户端一半,telnet将自动尝试协商终端类型。netcat另一方面,不假设远程服务器默认理解 telnet 转义,并且您需要使用-t启用 telnet 协商的选项来运行它。

对于服务器端,我相信这将由你来实施,并且超出了 ServerFault 的主题范围。阅读RFC1091将会是一个好的开始。

相关内容