列出支持的terminaltypes?

是否有一种便携的方式来列出所有N X系统上支持的terminaltypes?

如果没有,在Solaris上获得这个列表的最好方法是什么?

在大多数系统上,您可以在/usr/share/terminfo下查找文件。 在某些版本的Solaris上,可能是/usr/lib/terminfo 。 有些系统也会有一个termcap文件,可能在/etc/usr/share ,或偶尔/usr/share/misc ; 那里的terminal名称与^[^\t].*|匹配 和|之间的每个名字 s是有效的terminal名称。 (从技术上讲,前两个字符的input也是有效的,但是在实际中未被使用;它是从第六版Research UNIX的tty驱动程序中解脱出来的,一些termcapparsing器也可能接受长描述,但是许多不会。

任何系统的termcap(5)答案都在termcap(5)和/或terminfo(5)

如果你安装了ncurses包,你可以使用toe(1) 。 除此之外,就像

 ls /usr/share/lib/terminfo/?/* 

应该可以工作,但数据库的位置在各个操作系统之间并不一致。

首先你需要获得terminfo的path,例如:

  #infocmp -D /etc/terminfo /lib/terminfo /usr/share/terminfo 

然后运行:

 find /usr/share/terminfo/ -type -f -print 

注:结果是约3000行。

它可以帮助您检索terminaltypes列表

支持所有N X系统的terminaltypes?

没有。

你是什​​么意思terminal? 你的意思是愚蠢的terminal/terminal模拟器? 还是远程显示系统?

正如其他人所提到的,curses / terminfo试图为愚蠢的terminal提供一个统一的抽象层 – 但抽象层提供的覆盖范围没有很好的度量。 除了xterm(基于vt100仿真)之外,这些大多数只能用于访问遗留系统。 (putty或多或less是一个在ssh客户端上的xterm模拟器)。

OTOH的X Window系统是一个更复杂的水壶 – 只有一个协议,几年来变化很less。

还有其他的远程显示协议:( NX只是围绕X的包装),包括RDP(如Microsoft和Citrix所青睐),但AFAIK没有* nix服务器和VNC – 可在各种硬件上运行。