SSH连接Ubuntu服务器无法显示中文 - tuhaiyang/soft GitHub Wiki

我本地安装使用的是Ubuntu 英文环境,通过SSH连接Ubuntu服务器后无法正确显示中文

这是因为SSH连接建立过程中会把本地的语言环境发送给远程,
再将返回得到的字符根据本地的语言环境进行编码解析,
所以这里我需要对本地的语言环境指定为中文再连接SSH
先看一下本地的语言设置:echo $LANG , 或者$ locale

结果显示为en-US.UTF-8

一、打开终端,

输入sudo gedit /etc/default/locale (或者直接打开该目录下对应的文件)。

二、将第一默认的字符编码改为utf-8:

LANG=zh_CN.UTF-8
LANGUAGE=”zh_CN:zh:en_US:en”

1、先输入locale -a,查看一下现在已安装的语言

 

2、若不存在如zh_CN之类的语言包,进行中文语言包安装: apt-get install language-pack-zh-hans

3、安装好后我们可以进行临时修改:然后添加中文支持:  locale-gen zh_CN.UTF-8

临时修改

export LC_ALL='zh_CN.utf8'

locale

永久修改:

打开/etc的环境变量配置文件,这里的环境是ubuntu 16.04

cd /etc

/etc# vim bash.bashrc

在bash.bashrc中写入: export LC_ALL='zh_CN.UTF-8'

修改后进行执行, 可以使变量设置在当前窗口立即生效: source bash.bashrc

最后在重启这个container,对每个新终端窗口都生效: docker restart

重启后locale 发现已经修改成功