centos 语言设定以及乱码问题

目前大多数的 Linux distributions 已经都是支持日渐流行的万国码了,也都支持大部分的国家语系。
那么我们的 Linux 到底支持了多少的语系呢?这可以由 locale 这个指令来查询到喔!正体中文语系至少支持了两种以上的编码,一种是目前还是很常见的 big5 ,另一种则是越来越热门的 utf-8 编码。 那么我们如何修订这些编码呢?其实可以透过底下这些变量的说:
locale -a表示显示所有可用编码
locale 表示显示当前系统编码

centos 语言设定以及乱码问题_第1张图片
centos 语言设定以及乱码问题_第2张图片
基本上,你可以逐一设定每个与语系有关的变量数据,但事实上,如果其他的语系变量都未设定, 且
你有设定 LANG 或者是 LC_ALL 时,则其他的语系变量就会被这两个变量所取代! 这也是为什么
我们在 Linux 当中,通常说明仅设定 LANG 或 LC_ALL 这两个变量而已,因为他是最主要的设定
变量!
为什么在 Linux 主机的终端机接口 (tty1 ~ tty6) 的环境下,如果设定『 LANG=zh_TW.utf8 』这个设定值生效后,使用 man 或者其他讯息输出时, 都会有一堆乱码,尤其是使用 ls -l 这个参数时?
因为在 Linux 主机的终端机接口环境下是无法显示像中文这么复杂的编码文字, 所以就会产生乱码
了。也就是如此,我们才会必须要在 tty1 ~ tty6 的环境下, 加装一些中文化接口的软件,才能够看
到中文啊!不过,如果你是在 MS Windows 主机以远程联机服务器的软件联机到主机的话,那么,
嘿嘿!其实文字接口确实是可以看到中文的。 此时反而你得要在 LC_ALL 设定中文编码才好呢

如果发生一些乱码的问题,那么设定系统里面保有的语系编码, 例如:en_US 或 en_US.utf8 等等的设定,应该就 OK 的啦!好了,那么系统默认支持多少种语系呢? 当我们使用 locale时,系统是列出目前 Linux 主机内保有的语系文件, 这些语系文件都放置在: /usr/lib/locale/ 这个目录中

假设你有一个纯文本文件原本是在 Windows 底下建立的,那么这个文件预设可能是
big5 的编码格式。 在你将这个文件上传到 Linux 主机后,在 X window 底下打开时,咦!怎么中文字通通变成乱码了? 别担心!因为如上所示, Linux 目前大多默认是万国码显示嘛!你只要将开启该文件的软件编码由 utf8改成 big5 就能够看到正确的中文了!
centos 语言设定以及乱码问题_第3张图片

如果你在中文系统的Linux终端中显示有乱码,可以尝试键入 LANG=C 解决。犹如“zh”对应中文,这个“C”对应了英文ASCII环境。
export LANG=C; export LC_ALL=C

你可能感兴趣的:(centos)