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 进行授权