首頁 > 軟體

Linux下使用locale命令設定語言環境

2020-06-16 17:26:58

locale命令設定語言環境

在Linux中通過locale來設定程式執行的不同語言環境,locale由 ANSI C提供支援。locale的命名規則為_.,如zh_CN.GBK,zh代表中文, CN代表大陸地區,GBK表示字元集。在locale環境中,有一組變數,代表國際化環境中的不同設定:

CODE:

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

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

LC_NUMERIC,非貨幣的數位顯示格式

LC_TIME,時間和日期格式

LC_MESSAGES,提示資訊的語言。

另外還有一個LANGUAGE引數,它與LC_MESSAGES相似,但如果該引數一旦設定,則LC_MESSAGES引數就會失效。 LANGUAGE引數可同時設定多種語言資訊,如LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"。

LANG,LC_*的預設值,是最低階別的設定,如果LC_*沒有設定,則使用該值。類似於 LC_ALL

LC_ALL,它是一個宏,如果該值設定了,則該值會覆蓋所有LC_*的設定值。注意,LANG的值不受該宏影響

舉個例子,使用zh_CN.GBK中文locale:

CODE:

einstein:~# export LC_ALL=zh_CN.GBK

einstein:~# locale

LANG=zh_CN.GB2312

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_PAPER="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

因為我們剛開始按安裝的時候選擇的是簡體中文模式,所以預設的Locale也就是簡體中文,當然我們還能增加新的locale和更改locale設 置:

dpkp-reconfigure locales,也可手動修改/etc/locale.gen檔案,新增新的locale,然後執行locale-gen,即可生成新的locale,再 通過設定上面說的LC_*變數就可設定系統的locale了。下是我的locale.gen檔案:

CODE:

zh_CN GB2312

en_GB ISO-8859-1

en_GB.ISO-8859-15 ISO-8859-15

en_GB.UTF-8 UTF-8

en_US ISO-8859-1

en_US.ISO-8859-15 ISO-8859-15

en_US.UTF-8 UTF-8

zh_CN.GB18030 GB18030

zh_CN.GBK GBK

zh_CN.UTF-8 UTF-8

zh_HK BIG5-HKSCS

zh_HK.UTF-8 UTF-8

zh_TW BIG5

zh_TW.EUC-TW EUC-TW

zh_TW.UTF-8 UTF-8

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-12/137766.htm


IT145.com E-mail:sddin#qq.com