linux 有终端吗?我正在试验这台机器,看看虚拟终端是如何工作的,当我回显 $TERM 时,它打印了 linux?这是默认的 Linux 终端吗?我尝试在 Linux 上搜索手册页,但只返回有关操作系统的结果。
答案1
是的,有一个由名称标识的终端描述linux
。
该infocmp
程序将向您显示给定终端标识符的详细信息。在基于 Debian 的系统上,infocmp
位于ncurses-bin
软件包中。
$ infocmp linux
# Reconstructed via infocmp from file: /lib/terminfo/l/linux
...
我已经省略了这些功能的转义码。手册页terminfo(5)
描述了所有功能及其含义。
答案2
答案3
环境TERM
变量标识终端描述。该名称linux
自在 ncurses 中引入以来一直使用1994年作为 Linux 控制台的首选名称(而不是console
)。
ncurses 终端数据库定义了十几个变体,有些人使用它们。在终端数据库中,linux
是大多数人期望使用的版本的别名。大多数人使用别名是出于与终端描述相关的常见原因:
- 虽然更改别名很简单(使用 infocmp 和 tic),但大多数人不会修改他们的终端数据库以将别名指向不同的版本,
- 该名称用于
getty
定义(或等效项)中,并且大多数人不会更改那, 而且当然 - 一些程序(例如 GNU ls)对于如何管理名称有自己的想法
linux
(并且不费心使用终端数据库)。
扩展最后一项,GNU ls 的初始版本1996 年 6 月使用这些名称来表示TERM
支持的颜色的值:
TERM linux
TERM console
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM xterm
TERM vt100
使用几个“控制台”变体,这些变体从未由 ncurses 提供,但显然有一些用途。这可能引发了 ncurses' 中的评论INSTALL
(首次出现于1995年9月):
In various systems there has been a practice of designating the system
console driver type as `console'. Please do not do this! It
complicates peoples' lives, because it can mean that several different
terminfo entries from different operating systems all logically want to
be called `console'.
无论使用什么,这些都没有被删除,并且(对于 Linux 控制台),仅linux-c
添加了(在1999年, 相对1996年在 ncurses 中)。这当前文件例如有
TERM con[0-9]*x[0-9]*
TERM linux
TERM linux-c
进一步阅读: