注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

谷搜互联网应用www.iguso.com

谷搜专注企业邮箱十二年

 
 
 

日志

 
 

影响显示结果的语系变数 (locale)  

2014-05-26 17:24:35|  分类: 技术文章 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

影响显示结果的语系变数 (locale)

  还记得我们在第五章裡面提到的语系问题吗? 就是当我们使用 man command 的方式去查询某个资料的说明档时,该说明档的内容可能会因为我们使用的语系不同而产生乱码。 另外,利用 ls 查询档案的时间时,也可能会有乱码出现在时间的部分。那个问题其实就是语系的问题啦。

  目前大多数的 Linux distributions 已经都是支援日渐流行的万国码了,也都支援大部分的国家语系。 这有赖于 i18n (註4) 支援的帮助呢! 那么我们的 Linux 到底支援了多少的语系呢?这可以由 locale 这个指令来查询到喔!

  [root@www ~]# locale -a

  ....(前面省略)....

  zh_TW

  zh_TW.big5 <==大五码的中文编码

  zh_TW.euctw

  zh_TW.utf8 <==万国码的中文编码

  zu_ZA

  zu_ZA.iso88591

  zu_ZA.utf8

  正体中文语系至少支援了两种以上的编码,一种是目前还是很常见的 big5 ,另一种则是越来越热门的 utf-8 编码。 那么我们如何修订这些编码呢?其实可以透过底下这些变数的说:

  [root@www ~]# locale <==后面不加任何选项与参数即可!

  LANG=en_US <==主语言的环境

  LC_CTYPE="en_US" <==字元(文字)辨识的编码

  LC_NUMERIC="en_US" <==数字系统的显示讯息

  LC_TIME="en_US" <==时间系统的显示资料

  LC_COLLATE="en_US" <==字串的比较与排序等

  LC_MONETARY="en_US" <==币值格式的显示等

  LC_MESSAGES="en_US" <==讯息显示的内容,如功能表、错误讯息等

  LC_ALL= <==整体语系的环境

  ....(后面省略)....

  基本上,你可以逐一设定每个与语系有关的变数资料,但事实上,如果其他的语系变数都未设定, 且你有设定 LANG 或者是 LC_ALL 时,则其他的语系变数就会被这两个变数所取代! 这也是为什么我们在 Linux 当中,通常说明仅设定 LANG 这个变数而已,因为他是最主要的设定变数! 好了,那么你应该要觉得奇怪的是,为什么在 Linux 主机的终端机介面 (tty1 ~ tty6) 的环境下,如果设定『 LANG=zh_TW.big5 』这个设定值生效后,使用 man 或者其他讯息输出时, 都会有一堆乱码,尤其是使用 ls -l 这个参数时?

  因为在 Linux 主机的终端机介面环境下是无法显示像中文这么复杂的编码文字, 所以就会产生乱码了。也就是如此,我们才会必须要在 tty1 ~ tty6 的环境下, 加装一些中文化介面的软体,才能够看到中文啊!不过,如果你是在 MS Windows 主机以远端连线伺服器的软体连线到主机的话,那么,嘿嘿!其实文字介面确实是可以看到中文的。 此时反而你得要在 LANG 设定中文编码才好呢!数据库空间,美国主机空间

  Tips:

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

  你当然可以让每个使用者自己去调整自己喜好的语系,但是整体系统预设的语系定义在哪裡呢? 其实就是在 /etc/sysconfig/i18n 啰!这个档案在 CentOS 5.x 的内容有点像这样:

  [root@www ~]# cat /etc/sysconfig/i18n

  LANG="zh_TW.UTF-8"

  因为鸟哥在第四章的安装时选择的是中文语系安装画面, 所以这个档案预设就会使用中文编码啦!你也可以自行将他改成你想要的语系编码即可。

  Tips:

  假设你有一个纯文字档案塬本是在 Windows 底下建立的,那么这个档案预设应该是 big5 的编码格式。 在你将这个档案上传到 Linux 主机后,在 X window 底下打开时,咦!怎么中文字通通变成乱码了? 别担心!因为如上所示, i18n 预设是万国码系统嘛!你只要将开启该档案的软体编码由 utf8 改成 big5 就能够看到正确的中文了!


文章源自谷搜企业邮箱服务商 影响显示结果的语系变数 (locale)
  评论这张
 
阅读(1)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017