linux enus.utf8,CentOS 7中的系统语言包及UTF-8、en_US.UTF-8和zh_CN.UTF-8的区别

UTF-8、en_US.UTF-8和zh_CN.UTF-8的区别

en_US.UTF-8、zh_CN.UTF-8叫做字符集,就是说‘A’、‘B’、‘中’、‘国’等对应的整数值,

en_US.UTF-8只包含了ASCII码,zh_CN.UTF-8包含了6000多个汉字?

如果是这样的话,那所谓UTF-8,就是把这些整数,编写成一串字节的方法?

UTF-8 是编码方式

en_US.UTF-8 和 zh_CN.UTF-8 是语言环境,也就是字符集

en_US.UTF-8 和 zh_CN.UTF-8 包含的字符数量是基本上一样的,大概是七万个汉字,编码都是 UTF-8 编码,字符集是 Unicode,版本是 4.1 吧?zh_CN.GB18030 和 zh_CN.GBK 的字符集都与 Unicode 3 是等价的,记得应该是这样

语言环境的差别就是另一回事了,中国人和外国人表示时间啦,数字啦,习惯都不一样,所以必须区分开。大部分程序根据语言环境变量来选择界面的语言是中文还是英文。

所以一般linux系统的语言环境设置成:export LANG=zh_CN.UTF-8,代表中国人使用的unicode字符集

查看默认语言

[root@localhost ~]$ cat /etc/locale.conf

LANG=en_US.UTF-8​​​

或 [root@localhost​~]$ echo $LAN

查看系统已安装的语言包

$ locale

LANG=en_US.UTF-

LC_CTYPE="en_US.UTF-8

LC_NUMERIC="en_US.UTF-8

LC_TIME="en_US.UTF-8

LC_COLLATE="en_US.UTF-8

LC_MONETARY="en_US.UTF-8

LC_MESSAGES="en_US.UTF-8

LC_PAPER="en_US.UTF-8

LC_NAME="en_US.UTF-8

LC_ADDRESS="en_US.UTF-8

LC_TELEPHONE="en_US.UTF-8

LC_MEASUREMENT="en_US.UTF-8

LC_IDENTIFICATION="en_US.UTF-8"​​

临时修改默认语言

[root@localhost​~]$ LANG="zh_CN.UTF-8"​​

永久修改语言包

1 、安装中文语言包:

[root@host ~]# yum install -y kde-l10n-Chinese

2 、安装 glibc-common(如果已经安装过,则需要重新安装):

先检查是否已经安装 glibc-common :

[root@host ~]# yum list installed | grep glibc-common

或者

[root@host ~]# rpm -qa | grep glibc-common

如果已经安装过,则需要重新安装,这样才能利用上第一步的中文语言包:

[root@host ~]# yum reinstall -y glibc-common

如果没有安装过,那么安装即可:

[root@host ~]# yum install -y glibc-common

3 、查看系统是否支持中文语言包:

[root@host ~]# locale -a | grep zh

4 、修改配置文件,再重启服务器即可:

[root@host ~]# echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf

[root@host ~]# reboot

查看文件编码及修改文件编码

[root@localhost​~]$ enca filename​​​​

需要说明一点的是,enca对某些GBK编码 的文件 识别的不是很好,识别时会出现

Unrecognized encodin

在Vim中查看文件编码

:set fileencodin

如果想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以

~/.vimrc 文件 中添加以下内容

set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp93

这样,就可以让vim自动识别文件 编码 (可以自动识别UTF-8或者GBK编码 的文件 ),其实就是依照 fileencodings提供的编码 列表尝试,如果没有找到合适的编码 ,就用latin-1(ASCII)编码 打开

在Vim中直接进行转换文件编码 ,比如将一个文件 转换成utf-8格

:set fileencoding=utf-

用命令enconv 转换文件编码

enconv -L 原编码 -x 新编码 filename

例如: enconv -L zh_CN -x UTF-8 filenam

用命令iconv 转换文件编码

iconv -f 原编码 -t 新编码 filenam

例如:iconv -f encoding -t encoding filenam

用命令convmv 转换文件名编码:​​

convmv -f 原编码 -t 新编码 [选项] filenam

常用参数

-r 递归处理子文件

--notest 真正进行操作,请注意在默认情况下是不对文件 进行真实操作的,而只是试验

--list 显示所有支持的编

--unescap 可以做一下转义,比如把 变成空

注意:该命令只转换文件名编码,文件内容不

不要在NTFS和FAT文件 系统中使用此命令,否则可能产生意外结果,如果要在Linux 中正确的显示NTFS和 FAT的中文件名,可以通过mount参数来解决,具体方法查看一下man手册

标签:编码,en,zh,CN,US,UTF

来源: https://www.cnblogs.com/guanbin-529/p/12846345.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值