linux – TERM =哑终端必须具备的功能
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – TERM =哑终端必须具备的功能,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1873字,纯文字阅读大概需要3分钟。
内容图文
![linux – TERM =哑终端必须具备的功能](/upload/InfoBanner/zyjiaocheng/954/2271e06a862e4a50b660774d6fbc90e9.jpg)
我希望在golang中实现一个远程客户端,它通过nc连接到Linux并启动bash.所以我需要告诉bash我可以从它发送给我的stdout中解析哪些功能,以及我将如何将密钥代码和其他内容发送到它的stdin,以便它也可以解析它们.
这是通过TERM = something环境变量来完成的,我需要将其设置为某个值.如果我没有设置它,那么各种程序开始抱怨:
$mc
The TERM environment variable is unset!
我发现我可以设置TERM愚蠢地说我的客户真的有限.而且似乎我错过了一些东西.
$export TERM=dumb
$mc
Your terminal lacks the ability to clear the screen or position the cursor.
从这里看起来像哑终端没有这两种能力,但它仍然有什么能力?有关于它的规范或事实上的标准吗?
解决方法:
去源可以帮助.终端数据库有评论.这是一个slice from that:
#### Specials
#
# Special "terminals". These are used to label tty lines when you don't
# know what kind of terminal is on it. The characteristics of an unknown
# terminal are the lowest common denominator - they look about like a ti 700.
#
dumb|80-column dumb tty,
am,
cols#80,
bel=^G, cr=^M, cud1=^J, ind=^J,
unknown|unknown terminal type,
gn, use=dumb,
假设“哑”和“未知”终端类型,但很少使用:
>“dumb”有automargins(文本在右边缘“换行”),假定有80列,ASCII BEL和回车符.由于缺少更好的东西,cud1(向下光标)是一个ASCII换行符. ind(index)值相同,这意味着当您到达屏幕底部时文本会向上滚动.
没有光标寻址(杯)或替代(例如任意沿着行或列移动).
>“unknown”添加“generic”标志,标记它不适合curses应用程序使用.把它想象成一台打印机.
至于最低要求,实际上取决于个人应用. ncurses可以设法在没有杯子的情况下在屏幕上移动.它适用于六种策略.如果您阅读mvcur的来源,您可以了解它的需求.
但是,诸如mc之类的应用程序不仅仅依赖于ncurses来决定它是否有效,因为(在这种情况下)它可能与slang链接(它不会密切检查).因此,mc会自行检查,这可能会增加限制.
在实践中,除非您选择有限的终端描述,例如“哑”,否则您可能遇到的大多数终端都可以使用.
进一步阅读:
> terminfo – terminal capability data base
> curses interfaces to terminfo database(包括mvcur)
> ncurses/tty/lib_mvcur.c
内容总结
以上是互联网集市为您收集整理的linux – TERM =哑终端必须具备的功能全部内容,希望文章能够帮你解决linux – TERM =哑终端必须具备的功能所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。