2021-05-12 14:32:11
Linux下使用locale命令設定語言環境
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
相關文章