最近做个项目,需要批量提取云服务器中Linux操作系统下的文件名,而且里面大多都是中文名,然后进入Linux操作系统想要提取的目录里,进入dir一看,傻眼了,不显示中文,也不是乱码,全是3个数字,如270\4个数字.mp3与3个数字.png显示模式,如下图所示:
如上图所示,全是这种不是乱码的乱码,然后问了一下技术人员,也没搞明白,然后自己解决,这里记录一下,先用locale看了一下:
LANG=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
[root@VM_71_186_centos ~]#
不是en_US,也不是cn_ZH,先前装中文语言包和编码设置,但是在运行yum -y groupinstall chinese-support命令时出现下面的错误:
Error Downloading Packages:
ibus-table-chinese-wubi-jidian-1.4.6-1.el6.noarch: failure: ibus-table-chinese-wubi-jidian-1.4.6-1.el6.noarch.rpm from epel: [Errno 256] No more mirrors to try.
Error Downloading Packages:
ibus-table-chinese-wubi-jidian-1.4.6-1.el6.noarch: failure: ibus-table-chinese-wubi-jidian-1.4.6-1.el6.noarch.rpm from epel: [Errno 256] No more mirrors to try.
然后根据高手的指点,找到了解决方法,直接把LANG设置成 LANG="en_US.UTF-8" 就解决了。但是这个只是临时设置,下次启动还是不是乱码的乱码,如果永久切换成英文的话,看下面这个:
## 永久生效, 编辑/etc/sysconfig/i18n(最好reboot一下)
LANG="zh_CN.UTF-8"
## 或者编辑 /etc/profile 配置文件,添加如下一行
export LANG="zh_CN.UTF-8"
# 重新载入
. /etc/profile
## 查看当前的字符集
echo $LANG
相关主题