Список поддерживаемых типов терминалов?

Существует ли портативный способ перечисления поддерживаемых типов терминалов во всех системах N X?

Если нет, как лучше всего получить этот список в Solaris?

5 ответов

Решение

В большинстве систем вы можете искать файлы в /usr/share/terminfo, На некоторых версиях Solaris это может быть /usr/lib/terminfo вместо. Некоторые системы также будут иметь termcap файл, который может быть в /etc, /usr/shareили изредка /usr/share/misc; имена терминалов в этих строках совпадают ^[^\t].*|и каждое имя между |s является действительным именем терминала. (Технически первая 2-символьная запись также допустима, но на практике не используется; она оставлена ​​после взлома tty-драйвера для 6-го Исследовательского издания 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 строк.

Это может помочь вам получить список типов терминалов

Я знаю, что это очень старая тема, но для потомков:

Мое объявление было в/usr/share/lib/terminfoи второй в/usr/csw/lib/terminfo.

я использовалls -R /usr/share/lib/terminfoперечислить их всех.

поддерживаемые типы терминалов во всех системах N X?

Нет.

Что вы подразумеваете под терминалами? Вы имеете в виду тупые терминалы / эмуляторы терминалов? Или системы удаленного отображения?

Как уже упоминалось, [n]curses/terminfo пытается предоставить унифицированный уровень абстракции для общения с немыми терминалами - но нет хорошего показателя покрытия, обеспечиваемого уровнем абстракции. Помимо xterm (который основан на эмуляции vt100), они в основном доступны только для доступа к устаревшим системам. (putty более или менее является эмулятором xterm поверх ssh-клиента).

OTOH Система X Window - гораздо более сложный чайник для рыбы - и имеет только один протокол, который за последние годы претерпел очень мало изменений.

Существуют и другие протоколы удаленного отображения: (NX - это просто оболочка для X), включая RDP (как одобрено Microsoft и Citrix), но в AFAIK нет серверов *nix и VNC - который работает на всех видах оборудования.

Другие вопросы по тегам