Czy istnieje przenośny sposób wyświetlania listy obsługiwanych typów terminali we wszystkich systemach N X?
Jeśli nie, jaki jest najlepszy sposób na uzyskanie tej listy w systemie Solaris?
W większości systemów możesz szukać plików pod /usr/share/terminfo
. W niektórych wersjach Solaris może to być /usr/lib/terminfo
zamiast. Niektóre systemy będą miały również termcap
plik, w którym może być /etc
. /usr/share
lub od czasu do czasu /usr/share/misc
; nazwy terminali w tym wierszu są zgodne ^[^\t].*|
, a każda nazwa między |
s jest prawidłową nazwą terminala. (Z technicznego punktu widzenia pierwszy 2-znakowy wpis jest również poprawny, ale w praktyce nie jest używany; pozostaje z hakowania sterownika tty dla 6. edycji Edition UNIX. Niektóre termcap
parsery mogą zaakceptować długi opis, ale wiele nie.).
Ostateczna odpowiedź dla każdego systemu będzie w termcap(5)
i / lub terminfo(5)
.
Jeśli masz ncurses
zainstalowany pakiet, możesz użyć toe(1)
. Poza tym coś takiego
ls /usr/share/lib/terminfo/?/*
powinien działać, ale lokalizacja bazy danych nie jest spójna w różnych systemach operacyjnych.
Najpierw musisz uzyskać ścieżkę terminfo, taką jak:
#infocmp -D
/etc/terminfo
/lib/terminfo
/usr/share/terminfo
Następnie uruchomić :
find /usr/share/terminfo/ -type -f -print
UWAGA: wynik wyniósł około 3000 linii.
Może to pomóc w odzyskaniu listy typów terminali
-iname "*"
? Napisałbym,\! -type d -print
żeby usunąć katalogi. W sumie na mojej maszyniefind $(infocmp -D) \! -type d -print | grep -v '/README$'
. Można zastąpić-print
przez-ls
, który pokaże, które są aliasy, lub zastąpić\! -type d
,-type f
aby w ogóle nie pokazywać aliasów.find /usr/share/terminfo -type f
Nie.
Co rozumiesz przez terminale? Masz na myśli głupie terminale / emulatory terminali? Czy zdalne systemy wyświetlania?
Jak inni wspominali, [n] curses / terminfo próbuje zapewnić zunifikowaną warstwę abstrakcji do rozmowy z głupimi terminalami - ale nie ma dobrej miary pokrycia zapewnianej przez warstwę abstrakcji. Poza xterm (który opiera się na emulacji vt100) są one w większości dostępne tylko w celu uzyskania dostępu do starszych systemów. (kit jest mniej więcej emulatorem xterm na kliencie ssh).
OTOH system X Window jest znacznie bardziej wyrafinowanym czajnikiem z rybami - i ma tylko jeden protokół, który zmienił się bardzo niewiele na przestrzeni lat.
Istnieją inne zdalne protokoły wyświetlania: (NX to tylko opakowanie wokół X), w tym RDP (tak jak Microsoft i Citrix), ale AFAIK nie ma serwerów * nix i VNC - który działa na różnego rodzaju sprzęcie.
źródło