Linux系统 TERM 环境变量
Linux,TERM环境变量,终端颜色。
Linux系统 TERM 环境变量
TERM
在 Linux 系统中,TERM
是一个环境变量,用于指定当前终端(或终端模拟器)的类型。它告诉应用程序如何与终端交互,特别是如何处理控制序列(如光标移动、颜色显示
、清屏等)。
关键作用
- 终端兼容性
不同终端(如xterm
、gnome-terminal
、alacritty
)使用不同的控制码(escape sequences)。TERM
帮助应用程序(如vim
、top
、tmux
)选择正确的控制码。 - 功能支持
标识终端支持的功能,例如:- 颜色数量(如
xterm-256color
) - 特殊键(如
F1-F12
、方向键) - 屏幕刷新能力
- 颜色数量(如
常见 TERM 值示例
终端类型 | 描述 |
---|---|
xterm | 基础 X Window 终端 |
xterm-256color | 支持 256 色的 Xterm |
screen | GNU Screen 会话 |
screen-256color | Screen 支持 256 色 |
tmux 或 tmux-256color | Tmux 终端多路复用器 |
linux | 物理控制台(非图形界面) |
vt100 / vt220 | 旧式终端(高兼容性模式) |
查看当前 TERM 值
1
echo $TERM
典型输出:xterm-256color
、screen
、linux
等。
修改 TERM
临时修改(仅当前会话有效)
1
export TERM=xterm-256color
永久修改
将以下行添加到 Shell 配置文件(如 ~/.bashrc
或 ~/.zshrc
):
1
export TERM=xterm-256color
重新加载配置:
1
source ~/.bashrc
注意事项:
不要随意更改
错误的 $TERM 设置可能导致应用显示异常(乱码、光标错位)。通常终端会自动配置正确的值。- SSH 连接时
远程登录时,本地终端的$TERM
会传递到远程服务器。如果远程缺少对应的终端描述,可尝试:1
export TERM=xterm # 使用兼容性更好的基础终端类型
- 终端数据库
终端的控制码定义存储在/usr/share/terminfo/
目录。通过infocmp
查看:1
infocmp $TERM
故障排查
若终端显示异常(如 less
乱码),尝试重置:
1
reset
或检查 $TERM
是否匹配实际终端类型。
本文由作者按照 CC BY 4.0 进行授权