GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu zkontrolovat, které definice terminálů jsou k dispozici?

Program infocmp na "jakémkoli" systému podporující terminfo náhodou zobrazuje cestu tam, kde najde popis terminálu pro aktuální terminál. Například (v tomto případě AIX):

$ infocmp vt100
#       Reconstructed via infocmp from file: /usr/share/lib/terminfo/v/vt100
vt100|vt100-am|Digital VT100,
        am, msgr, xenl, xon,
        cols#80, it#8, lines#24, vt#3,
        ...

U ncurses je to složitější, protože můžete mít více databází terminfo a záznamy nemusí být jednotlivé soubory. Jedna databáze a jeden soubor na položku je výchozí , kvůli kompatibilitě se systémy Unix.

-D volba pro tic a infocmp (přidaná koncem roku 2011) je jedním ze způsobů, jak zobrazit další informace. Například na mém Debian7 vidím toto:

$ infocmp6 -D
/users/tom/.terminfo
/usr/local/ncurses/share/terminfo
/usr/share/terminfo
/lib/terminfo

Na svém počítači s FreeBSD 10 používám hašované databáze:

$ infocmp -D
/usr/local/ncurses/share/terminfo.db
/usr/local/share/misc/terminfo
/etc/termcap

Alternativně lze použít toe program pro vytvoření zprávy o všech dostupných položkách terminálu. Pomocí -s a -a možnosti umožňují kombinovat věci (jako conflict program):

--> /users/tom/.terminfo
----> /usr/local/ncurses/share/terminfo
------> /usr/share/terminfo
--------> /lib/terminfo
--*-+---:       9term           Plan9 terminal emulator for X
--*---*-:       Eterm           Eterm with xterm-style color support (X Window System)
--*-*---:       Eterm-256color  Eterm with xterm 256-colors
--*-*---:       Eterm-88color   Eterm with 88 colors
--*-+---:       MtxOrb          Generic Matrix Orbital LCD display
--*-+---:       MtxOrb162       16x2 Matrix Orbital LCD display
--*-+---:       MtxOrb204       20x4 Matrix Orbital LCD display
--*-+---:       NCR260VT300WPP  NCR 2900_260 vt300 wide mode pc+  kybd
--*-+---:       aaa             ann arbor ambassador/30 lines
--*-+---:       aaa+dec         ann arbor ambassador in dec vt100 mode
--*-+---:       aaa+rv          ann arbor ambassador in reverse video
...

V systému Solaris 10 můžete:

find /usr/share/lib/terminfo -type f -print

Měli byste být schopni udělat něco jako:

find /usr -type d -name terminfo -print

zjistit, kde se adresář nachází.

Můžete si také přečíst, abyste našli přesnou cestu:

man terminfo

Linux
  1. Jak otestovat, jaký Shell používám v terminálu?

  2. Jak zkontrolovat, zda Bash může tisknout barvy?

  3. Jak zkontrolovat, který Shell používám?

  1. Jak mohu zkontrolovat, zda je PostgreSQL nainstalován nebo ne prostřednictvím skriptu Linux?

  2. Jak mohu zkontrolovat, zda adresář existuje?

  3. Jak zkontrolovat HZ v terminálu?

  1. Jak zkontrolovat, zda běží démoni Hadoop?

  2. Jak mohu vědět, který proces používá swap?

  3. Jak zjistit, které časové pásmo v Linuxu?