Linux語言環境設定

2021-06-28 01:36:05 字數 2591 閱讀 7896

程式執行使用一套語言需要有字符集(資料)和字型(顯示),locale是根據計算機使用者所使用的語言,所在國家或者地區,以及當地的文化傳統所定義的乙個軟體執行時的語言環境。

一、locale詳解

在 linux 中通過 locale 來設定程式執行的不同語言環境,locale 由 ansi c 提供支援。locale 的命名規則為:

《語言》_《地區》.《字符集編碼》

如:zh_cn.utf-8,zh代表中文,cn代表大陸地區,utf-8表示字符集。

在locale環境中,有一組變數,代表國際化環境中的不同設定:

1、lc_collate

定義該環境的排序和比較規則

2、lc_ctype

用於字元分類和字串處理,控制所有字元的處理方式,包括字元編碼,字元是單位元組還是多位元組,如何列印等。是最重要的乙個環境變數。

3、lc_monetary

貨幣格式

4、lc_numeric

非貨幣的數字顯示格式

5、lc_time

時間和日期格式

6、lc_messages

提示資訊的語言。另外還有乙個language引數,它與lc_messages相似,但如果該引數一旦設定,則lc_messages引數就會失效。language引數可同時設定多種語言資訊,如languane="zh_cn.gb18030:zh_cn.gb2312:zh_cn"。

7、lang

lc_*的預設值,是最低級別的設定,如果lc_*沒有設定,則使用該值。類似於 lc_all。

8、lc_all

它是乙個巨集,如果該值設定了,則該值會覆蓋所有lc_*的設定值。注意,lang的值不受該巨集影響。

乙個例子:

設定前,使用預設locale:

# locale

lang="posix"

lc_ctype="posix"

lc_numeric="posix"

lc_time="posix"

lc_collate="posix"

lc_monetary="posix"

lc_messages="posix"

lc_*****="posix"

lc_name="posix"

lc_address="posix"

lc_telephone="posix"

lc_measurement="posix"

lc_identification="posix"

lc_all=

設定後,使用zh_cn.gbk中文locale:

# export lc_all=zh_cn.gbk

# locale

lang=zh_cn.utf-8

lc_ctype="zh_cn.gbk"

lc_numeric="zh_cn.gbk"

lc_time="zh_cn.gbk"

lc_collate="zh_cn.gbk"

lc_monetary="zh_cn.gbk"

lc_messages="zh_cn.gbk"

lc_*****="zh_cn.gbk"

lc_name="zh_cn.gbk"

lc_address="zh_cn.gbk"

lc_telephone="zh_cn.gbk"

lc_measurement="zh_cn.gbk"

lc_identification="zh_cn.gbk"

lc_all=zh_cn.gbk

"c"是系統預設的locale,"posix"是"c"的別名。所以當我們新安裝完乙個系統時,預設的locale就是c或posix。

二、locale常用操作

1、檢視現有語言環境:

locale

2、可用語言環境:

locale -a

3、臨時修改語言環境:

aix:

export lang=en_us

export lang=zh_cn

linux:

export lang=en_us.utf-8

export lang=zh_cn.utf-8

4、永久修改系統級字符集:

修改/etc/sysconfig/i18n

英文版系統:

lang="en_us.utf-8"

sysfont="latarcyrheb-sun16"

中文版系統:

lang="zh_cn.utf-8"

sysfont="latarcyrheb-sun16"

英文版系統支援中文字符集:yum install fonts-chinese

三、安裝中文字符集 

1、安裝所有與中文支援相關的包

# yum -y groupinstall chinese-support

2、修改字元編碼配置檔案

# vi /etc/sysconfig/i18n

修改後內容如下:

lang="zh_cn.utf-8"

supported="zh_cn:zh:en_us.utf-8:en_us:en:zh_cn.gb18030"

sysfont="latarcyrheb-sun16"

from:

Linux語言環境設定

程式執行使用一套語言需要有字符集 資料 和字型 顯示 locale是根據計算機使用者所使用的語言,所在國家或者地區,以及當地的文化傳統所定義的乙個軟體執行時的語言環境。一 locale詳解 在 linux 中通過 locale 來設定程式執行的不同語言環境,locale 由 ansi c 提供支援。...

linux中 語言環境的設定(locale)

the original etc sysconfig i18n file is lang en us.utf 8 sysfont latarcyrheb sun16 if we want to change locale to be japanese,just follow the instucti...

linux 設定字符集和語言環境

1.全域性字符集語言環境 cat etc locale.conf lang zh cn.utf 8 需root許可權 修改為gbk echo lang zh cn.gbk etc locale.conf 字串 lang zh cn.gbk 覆蓋到檔案 source etc locale.conf 啟...