Есть ли переносимый способ перечислить поддерживаемые типы терминалов на всех NX-системы?
Если нет, то как лучше всего получить этот список в Solaris?
В большинстве систем вы можете искать файлы в /usr/share/terminfo
. В некоторых версиях Solaris это может быть /usr/lib/terminfo
вместо. Некоторые системы также будут иметь termcap
файл, который может находиться в /etc
. /usr/share
, или иногда /usr/share/misc
; имена терминалов в строках совпадают ^[^\t].*|
, и каждое имя между |
s - допустимое имя терминала. (Технически первая двухсимвольная запись также действительна, но на практике не используется; она осталась после взлома tty-драйвера для 6th Research Edition UNIX. Некоторые termcap
парсеры также могут принимать длинное описание, но многие - нет.).
Окончательный ответ для любой системы будет в termcap(5)
и / или terminfo(5)
.
Если у вас есть ncurses
пакет установлен, вы можете использовать toe(1)
. Помимо этого, что-то вроде
ls /usr/share/lib/terminfo/?/*
должен работать, но расположение базы данных в разных операционных системах не согласовано.
Сначала вам нужно получить путь terminfo, например:
#infocmp -D
/etc/terminfo
/lib/terminfo
/usr/share/terminfo
Затем запустите:
find /usr/share/terminfo/ -type -f -print
НОТА: Результат был около 3000 строк.
Это может помочь вам получить список типов терминалов
поддерживаемые типы терминалов на всех NX-системы?
Нет.
Что вы имеете в виду под терминалами? Вы имеете в виду тупые терминалы / эмуляторы терминалов? Или системы удаленного отображения?
Как уже упоминалось, [n] curses / terminfo пытается предоставить унифицированный уровень абстракции для общения с немыми терминалами, но нет надежной меры покрытия, обеспечиваемого уровнем абстракции. За исключением xterm (который основан на эмуляции vt100), они в основном доступны только для доступа к устаревшим системам. (putty - это более или менее эмулятор xterm поверх ssh-клиента).
OTOH система X Window - это гораздо более сложный котел с рыбой - и имеет только один протокол, который за эти годы претерпел очень мало изменений.
Существуют и другие протоколы удаленного отображения: (NX - это просто оболочка вокруг X), включая RDP (который предпочитают Microsoft и Citrix), но AFAIK нет серверов * nix и VNC, который работает на всех видах оборудования.