VS Code终端默认不随界面语言切换中文,需单独配置shell环境变量(如Linux/macOS设LANG=zh_CN.UTF-8、Windows Git Bash改~/.bashrc、PowerShell调系统区域),git/npm等工具还需额外启用翻译开关。

VS Code 内置终端(Integrated Terminal)默认不随界面语言切换中文,它继承的是系统 shell 的 locale 环境,不是 locale.json 或界面设置。 想让终端里命令提示符、ls 报错、git status 输出等变成中文,得单独配 shell 环境变量,和界面汉化是两套逻辑。
终端输出还是英文?先看 shell 是什么
VS Code 终端用的是你系统默认的 shell(如 Windows 的 PowerShell / CMD / Git Bash,macOS/Linux 的 zsh/bash),它的语言行为完全由该 shell 启动时读取的环境变量决定,和 VS Code 自身语言包无关。常见现象:
-
git status显示英文 —— git 本身没启用中文本地化 -
ls: cannot access 'xxx': No such file or directory—— 系统 C library 的错误信息没切 locale - 输入
locale命令,显示LANG=en_US.UTF-8—— 这才是根源
Linux/macOS:改 shell 的 LANG/LC_ALL
在 shell 配置文件(~/.zshrc、~/.bashrc 或 ~/.profile)末尾加一行,然后 source 生效:
export LANG=zh_CN.UTF-8
注意:
- 必须确保系统已安装该 locale:运行
locale -a | grep zh_CN,若无输出需先执行sudo locale-gen zh_CN.UTF-8(Ubuntu/Debian)或sudo localedef -i zh_CN -f UTF-8 zh_CN.UTF-8(CentOS/macOS) - 别写成
LC_ALL=zh_CN.UTF-8—— 它会强制覆盖所有 locale 类别,可能干扰某些只认LC_MESSAGES的程序 - VS Code 终端启动时会加载这些配置,但已打开的终端窗口需手动
source ~/.zshrc或新开一个 tab
Windows:Git Bash 和 PowerShell 分开处理
Git Bash 是最常被误认为“VS Code 终端就是它”的场景,但它本质是 MinGW 环境,locale 行为和 Linux 接近:
- 编辑
~/.bashrc,加export LANG=zh_CN.UTF-8,保存后重启终端 - PowerShell 则不走
LANG,靠系统区域设置:控制面板 → 区域 → 管理 → 更改系统区域设置 → 勾选“Beta 版:使用 Unicode UTF-8 提供全球语言支持”,重启生效(影响全局,慎用) - Windows Terminal + PowerShell 组合下,更推荐用
$env:PSModulePath加载中文模块,而非硬改系统 locale
某些命令仍不中文?它们有独立开关
像 git、npm、node 这类工具,即使系统 locale 是中文,也可能默认关掉翻译:
-
git:需额外设git config --global i18n.commitEncoding utf-8和i18n.logOutputEncoding utf-8;部分版本还依赖export GIT_TERMINAL_PROMPT=0避免乱码 -
npm:运行npm config set language zh,但仅影响部分提示,不改命令输出 -
man页面:多数中文 man 包未预装,apt install manpages-zh(Ubuntu)后还需export MANPATH="/usr/share/man/zh_CN:$MANPATH"
真正卡住人的,往往是以为“VS Code 设了中文,终端就该跟着变”——其实终端只是个壳,里面跑什么、说什么话,全看它启动时带的环境变量和具体程序自己的策略。


















