有没有办法让telnet应用程序清除输出客户端(使用Java Socket连接+缓冲区)?例如,程序向连接的用户查询登录名和密码,当他们成功登录时,我会cls为Windows或clearLinux做.
telnet应用程序是终端模拟器.在很久以前,与计算机通信的唯一方法是使用具有纯文本屏幕和键盘的终端.终端将您输入的所有内容发送到计算机.计算机发回了打印在屏幕上的字符.就像telnet一样.DEC创建了一系列名为VT52,VT100等的终端.他们能够解释特殊的控制序列,以便计算机可以给终端提供更多花哨的指令.这些控制序列由ANSI标准化,现在称为ANSI转义码.了解VT100转义码的终端仿真器称为VT100终端仿真器.
您可以在维基百科和其他地方查找ansi转义码.它们都以转义的字符代码开头,并由控制字符跟随.清除屏幕的控制字符是"2J".因此,您需要做的是将此字符串从您的服务器发送到telnet客户端:
myOutputStream.print("\u001B[2J");
myOutputStream.flush();
Run Code Online (Sandbox Code Playgroud)
您也可以发送其他控制字符.尝试"\ u001B [7m"来反转屏幕.
| 归档时间: |
|
| 查看次数: |
4704 次 |
| 最近记录: |