Mac终端查系统语言需用defaults read NSGlobalDomain AppleLanguages看首选项数组,首位为界面语言;locale命令显示当前Shell环境区域设置,可能与系统语言不一致。

Mac终端查看系统语言设置需直接读取系统偏好配置,不能依赖当前终端界面显示的语言,因为终端本身可能被单独设为其他语言编码或区域格式。
用defaults命令读取全局语言偏好
打开“终端”,输入以下命令并回车:
defaults read NSGlobalDomain AppleLanguages
该命令会输出一个数组,例如:("zh-Hans", "en"),表示系统首选语言顺序。排在第一位的即为当前生效的系统界面语言。
【注意:此命令仅读取用户级配置,不包含登录窗口或恢复模式下的语言设置】
用locale命令查看当前Shell环境区域设置
在终端中执行:
locale
将显示LANG、LC_CTYPE、LC_MESSAGES等变量值,例如LANG=zh_CN.UTF-8。这反映的是当前终端会话的区域与语言环境,由shell启动时继承或手动设置(如通过~/.zshrc),【它可能与系统界面语言完全不一致】。
若需强制让终端使用系统语言,可临时运行:unset LANG && unset LC_ALL && exec zsh
验证系统语言是否已写入全局域(高级确认)
第一步:检查AppleLanguages是否存在于NSGlobalDomain中
defaults read NSGlobalDomain | grep AppleLanguages
第二步:若无输出,说明系统未显式设置语言偏好,此时macOS将回退至安装时默认语言或首次设置语言
第三步:若返回为空数组(),则系统语言处于未定义状态,界面通常显示为英文
第四步:若命令报错“Domain … does not exist”,表示该用户从未修改过语言设置,系统使用内置默认值

















