¿Existe una forma portátil de enumerar los tipos de terminales compatibles en todos los sistemas N X?
Si no, ¿cuál es la mejor manera de obtener esta lista en Solaris?
En la mayoría de los sistemas, puede buscar archivos debajo /usr/share/terminfo
. En algunas versiones de Solaris que pueden ser /usr/lib/terminfo
en su lugar. Algunos sistemas también tendrán un termcap
archivo, que puede estar en /etc
. /usr/share
, O de vez en cuando /usr/share/misc
; los nombres de terminal en que están en líneas coincidentes ^[^\t].*|
, y cada nombre entre |
s es un nombre de terminal válido. (Técnicamente, la primera entrada de 2 caracteres también es válida, pero en la práctica no se utiliza; queda de un tty driver hack para 6th Research Edition UNIX. Algunos termcap
analizadores también pueden aceptar la descripción larga, pero muchos no lo harán).
La respuesta definitiva para cualquier sistema estará en termcap(5)
y / o terminfo(5)
.
Si tiene el ncurses
paquete instalado, puede usarlo toe(1)
. Más allá de eso, algo así como
ls /usr/share/lib/terminfo/?/*
debería funcionar, pero la ubicación de la base de datos no es coherente en todos los sistemas operativos.
Al principio necesita obtener la ruta de terminfo como:
#infocmp -D
/etc/terminfo
/lib/terminfo
/usr/share/terminfo
Entonces corre :
find /usr/share/terminfo/ -type -f -print
NOTA: el resultado fue de aproximadamente 3000 líneas.
Puede ayudarlo a recuperar la lista de tipos de terminales
-iname "*"
sirve? Habría escrito\! -type d -print
para eliminar directorios. En total, en mi máquina,find $(infocmp -D) \! -type d -print | grep -v '/README$'
. Se puede reemplazar-print
por-ls
, que mostrará cuáles son alias, o reemplazar\! -type d
por-type f
no mostrar alias en absoluto.find /usr/share/terminfo -type f
No.
¿Qué quieres decir con terminales? ¿Te refieres a terminales tontos / emuladores de terminal? ¿O sistemas de visualización remota?
Como otros han mencionado, [n] curses / terminfo intenta proporcionar una capa de abstracción unificada para hablar con terminales tontos, pero no hay una buena medida de la cobertura proporcionada por la capa de abstracción. Aparte de xterm (que se basa en la emulación vt100), en su mayoría solo están disponibles para acceder a sistemas heredados. (Putty es más o menos un emulador xterm en la parte superior de un cliente ssh).
OTOH el sistema X Window es un hervidor de pescado mucho más sofisticado, y solo tiene un protocolo que ha tenido muy pocos cambios a lo largo de los años.
Existen otros protocolos de visualización remota: (NX es solo una envoltura alrededor de X), incluido RDP (como lo prefieren Microsoft y Citrix) pero AFAIK no hay servidores * nix y VNC, que se ejecuta en todo tipo de hardware.
fuente