关于mobaxterm连接工具Linux使用tree命令乱码
故障
本人使用的是MobaXterm Personal 11.1版本
,在使用的过程中发现连接上服务器后,查看日志或者使用tree
命令的时候显示中文乱码,一开始以为是连接工具的问题,在鼓捣了半天后突然想到是不是和服务器系统字符集
有关!
排查
- 连接进入服务器,显示乱码如下:
- 查看系统字符集
说明:
本服务器使用的CentOS7.x
所以查看字符集使用如下
### locale命令
[email protected]:/#:locale
LANG=zh_US.UTF-8
LC_CTYPE="zh_US.UTF-8"
LC_NUMERIC="zh_US.UTF-8"
LC_TIME="zh_US.UTF-8"
LC_COLLATE="zh_US.UTF-8"
LC_MONETARY="zh_US.UTF-8"
LC_MESSAGES="zh_US.UTF-8"
LC_PAPER="zh_US.UTF-8"
LC_NAME="zh_US.UTF-8"
LC_ADDRESS="zh_US.UTF-8"
LC_TELEPHONE="zh_US.UTF-8"
LC_MEASUREMENT="zh_US.UTF-8"
LC_IDENTIFICATION="zh_US.UTF-8"
LC_ALL=
###查看文件
[email protected]:/#:cat /etc/locale.conf
LANG="en_US.UTF-8"
使用CentOS6.x
查看字符集文件如下
#文件
cat /ect/sysconfig/i18n
#变量
echo $LANG
显示LANG="en_US.UTF-8"
就代表着使用的是英文字符集,中文字符集是zh_US.UTF-8
这里显示的是英文字符集,所以使用mobaxterm客户端连接才会出现字符乱码的问题!
解决
修改字符集文件方法
- 使用编辑器修改文件:
vim /etc/locale.conf
或者/ect/sysconfig/i18n
vim /etc/locale.conf
# LANG="en_US.UTF-8" #注释掉原有的英文字符集
LANG="zh_US.UTF-8" #使用中文字符集
- 生效更改的字符集
可以使用
reboot
命令重启服务器
可以使用source /etc/locale.conf
生效配置文件
- 如果想临时使用英文字符集可以使用如下命令
LANG=EN
#重启后失效
查看是否恢复正常
再次使用tree
命令,发现之前的树形分支结构乱码已经解决