Gibt es eine portable Möglichkeit, unterstützte Terminaltypen auf allen N X-Systemen aufzulisten?
Wenn nicht, wie kann diese Liste unter Solaris am besten abgerufen werden?
Auf den meisten Systemen können Sie unter nach Dateien suchen /usr/share/terminfo
. In einigen Solaris-Versionen ist dies möglicherweise der Fall /usr/lib/terminfo
. Einige Systeme haben auch eine termcap
Datei, die sich möglicherweise in befindet /etc
. /usr/share
oder gelegentlich /usr/share/misc
; Die Terminalnamen in diesen Zeilen stimmen überein ^[^\t].*|
, und jeder Name zwischen |
s ist ein gültiger Terminalname. (Technisch gesehen ist der erste zweistellige Eintrag ebenfalls gültig, wird jedoch in der Praxis nicht verwendet. Er stammt aus einem tty-Treiber-Hack für die 6. Research Edition UNIX. Einige termcap
Parser akzeptieren möglicherweise auch die lange Beschreibung, viele jedoch nicht.)
Die endgültige Antwort für jedes System lautet in termcap(5)
und / oder terminfo(5)
.
Wenn Sie das ncurses
Paket installiert haben, können Sie verwenden toe(1)
. Darüber hinaus so etwas wie
ls /usr/share/lib/terminfo/?/*
sollte funktionieren, aber der Speicherort der Datenbank ist betriebssystemübergreifend nicht konsistent.
Zuerst müssen Sie den Pfad von terminfo erhalten, wie zum Beispiel:
#infocmp -D
/etc/terminfo
/lib/terminfo
/usr/share/terminfo
Dann renne :
find /usr/share/terminfo/ -type -f -print
HINWEIS: Das Ergebnis war ungefähr 3000 Zeilen.
Es kann Ihnen helfen, die Liste der Terminaltypen abzurufen
-iname "*"
nützlich? Ich hätte geschrieben\! -type d -print
, um Verzeichnisse zu entfernen. Insgesamt auf meiner Maschinefind $(infocmp -D) \! -type d -print | grep -v '/README$'
. Man kann sich ersetzen-print
durch-ls
, die zeigen , welche Aliase sind, oder ersetzen Sie\! -type d
durch-type f
nicht zeigen Aliase überhaupt.find /usr/share/terminfo -type f
Nein.
Was meinst du mit Terminals? Meinen Sie dumme Terminals / Terminalemulatoren? Oder Fernanzeigesysteme?
Wie bereits erwähnt, versucht [n] curses / terminfo, eine einheitliche Abstraktionsschicht für die Kommunikation mit dummen Terminals bereitzustellen. Es gibt jedoch kein gutes Maß für die Abdeckung durch die Abstraktionsschicht. Abgesehen von xterm (das auf der Emulation von vt100 aufbaut) sind diese meist nur für den Zugriff auf Legacy-Systeme verfügbar. (putty ist mehr oder weniger ein xterm-emulator auf einem ssh-client).
Das X Window-System von OTOH ist ein weitaus ausgefeilterer Fischkessel - und es gibt nur ein Protokoll, das sich im Laufe der Jahre kaum geändert hat.
Es gibt andere Remote-Anzeigeprotokolle: (NX ist nur ein Wrapper um X) einschließlich RDP (wie von Microsoft und Citrix bevorzugt), aber AFAIK gibt es keine * nix-Server und VNC - das auf allen Arten von Hardware ausgeführt wird.
quelle