关于mobaxterm连接工具Linux使用tree命令乱码

版权声明:转载请声明! https://blog.csdn.net/qq_34672033/article/details/88836504

故障

本人使用的是MobaXterm Personal 11.1版本,在使用的过程中发现连接上服务器后,查看日志或者使用tree命令的时候显示中文乱码,一开始以为是连接工具的问题,在鼓捣了半天后突然想到是不是和服务器系统字符集有关!

排查

  • 连接进入服务器,显示乱码如下:
    在这里插入图片描述- 查看系统字符集
    说明:
    本服务器使用的CentOS7.x所以查看字符集使用如下
### locale命令
root@template:/#: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=

###查看文件
root@template:/#: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命令,发现之前的树形分支结构乱码已经解决
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34672033/article/details/88836504