分类: LINUX
2011-01-09 11:22:06
Locale终结
1. 涉及的变量
locale分类:
语 言符号及其分类(LC_CTYPE),数字 (LC_NUMERIC),比较和排序习惯(LC_COLLATE),时间显示格式(LC_TIME),货币单位(LC_MONETARY),信息主要是 提示信息,错误信息, 状态信息, 标题, 标签, 按钮和菜单等(LC_MESSAGES),姓名书写方式(LC_NAME),地址书写方式(LC_ADDRESS),电话号码书写方式 (LC_TELEPHONE),度量衡表达方式(LC_MEASUREMENT),默认纸张尺寸大小(LC_PAPER)和locale对自身包含信息的 概述(LC_IDENTIFICATION)。
eg:
$ locale
LANG=en_US.UTF-8
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_MONETARY
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" #对自身包含信息的概述
LC_ALL=
2. Locale的配置文件
/etc/sysconfig/i18n
这个是系统配置默认字符集的地方。
/usr/share/i18n/locales
存放所有地区的语言习惯,这个是locale对每个地区的语言习惯的定义文件。
usr/share/i18n/charmaps
放字符集的地方。
/usr/lib/locale/
这个是locale运行时候用到的真正的数据库,即用localedef生成的数据库。
localedef [-f charmapfile] [-i inputfile] [--force] [--verbose] [--posix] [--quiet] outputpath
下一篇有localedef命令的总结
3. Locale的设定
网上很多说法是LC_ALL>LC_*>LANG,这个我也不知道为什么,在我的测试看来,LC_ALL,LC_*这个两个参数就没有什么用,怎么都赋值不上,之哟一个LANG可用。
所以一般修改locale设定,就直接修改LANG就可以了,后来我想想也是,设定其他的有什么用的,平时根本用不到。
而且LANG的设定必须合法哦。
至于在哪设定,那就随便了,建议有以下几种:
1) 从CDE登录屏幕上修改locale
选 择 options -> languages -> choose the new locale
2) 临时设置locale(shell相关的)
ksh : LANG=
sh : LANG=
export LANG
csh : setenv LANG
bash: export LANG=en_US(zh.GBK)
3) vi /etc/default/init
add
LANG=
LC_ALL=
reboot。
4).cshrc/.profile/.bashrc: 设置$LANG
chinaunix网友2011-03-09 11:55:23
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com