MacOS 系统切换英文后 ssh 异常

原创
2017/12/18 13:49
阅读数 488

1. 问题描述

将系统由中文切换到英文后,使用 SSH 连接服务器时,一直出现如下的错误信息:

  • locale: Cannot set LC_CTYPE to default locale: No such file or directory

  • -bash: 警告:setlocale: LC_CTYPE: 无法改变区域选项 (UTF-8): 没有那个文件或目录

查看当前系统语言环境,如下:

➜  ~ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

我发现切换英文后,这里的设置产生了异常,使用命令 locale -a | grep UTF-8 可以发现,当前系统中并没有 UTF-8 这个语言文件,因此需要修改成 en_US.UTF-8

2. 解决

方式一:临时修改

➜  ~ export LC_ALL=en_US.UTF-8
➜  ~ locale
LANG=
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL="en_US.UTF-8"

方式二:永久修改

修改对应的配置文件,如 ~/.bashrc 或 ·/.zshrc,然后使用 source ~/.zshrc 让对应的配置文件生效。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部