在 Windows 10 的 Ubuntu 子系统(WSL)中,如果中文显示成方块或乱码,通常需要同时检查两件事:系统 locale 是否设置为中文 UTF-8,以及终端环境中是否安装了可用的中文字体。
Table of Contents
1. 修改 locale 配置
编辑 /etc/default/locale:
sudo vim /etc/default/locale
将内容设置或补充为:
LANG=zh_CN.UTF-8
LANGUAGE="zh_CN:zh"
保存后,可以重新打开 WSL 终端,或执行下面的命令让当前 shell 重新读取环境变量:
source /etc/default/locale
也可以用下面的命令检查当前 locale:
locale
如果 LANG 显示为 zh_CN.UTF-8,说明配置已经生效。
2. 安装中文字体
安装文泉驿微米黑字体:
sudo apt-get update
sudo apt-get install ttf-wqy-microhei
安装完成后,重启 WSL 终端,再查看中文内容是否恢复正常。
3. 仍然显示方块时
如果 WSL 内部 locale 和字体都已配置,但 Windows 终端窗口仍然显示方块,需要检查终端程序本身使用的字体。可以在 Windows Terminal、ConHost 或其他终端模拟器中,将字体改为支持中文的字体,例如 Microsoft YaHei、SimSun、等距更纱黑体或其他已安装的中文字体。
参考:
