Linux中的系统语言包及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.U
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字符集
查看默认语言
1 2 3 4 |
|
查看系统已安装的语言包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
临时修改默认语言
1 |
|
永久修改语言包
1 、安装中文语言包:
1 |
|
2 、安装 glibc-common(如果已经安装过,则需要重新安装):
先检查是否已经安装 glibc-common :
1 |
|
或者
1 |
|
如果已经安装过,则需要重新安装,这样才能利用上第一步的中文语言包:
1 |
|
如果没有安装过,那么安装即可:
1 |
|
3 、查看系统是否支持中文语言包:
1 |
|
4 、修改配置文件,再重启服务器即可:
1 2 |
|
查看文件编码及修改文件编码
1 |
|
需要说明一点的是,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 转换文件编码
1 2 |
|
用命令iconv 转换文件编码
1 2 |
|
用命令convmv 转换文件名编码:<-----此命令常用于解决Linux文件拷贝到Windows后文件名乱码的问
convmv -f 原编码 -t 新编码 [选项] filenam
常用参数
-r 递归处理子文件
--notest 真正进行操作,请注意在默认情况下是不对文件 进行真实操作的,而只是试验
--list 显示所有支持的编
--unescap 可以做一下转义,比如把 变成空
注意:该命令只转换文件名编码,文件内容不
不要在NTFS和FAT文件 系统中使用此命令,否则可能产生意外结果,如果要在Linux 中正确的显示NTFS和 FAT的中文件名,可以通过mount参数来解决,具体方法查看一下man手册
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)