linux locale是Linux系統中多語言環境的設定介面,使用locale命令可以設定和顯示程式執行的語言環境;locale會根據計算機使用者所使用的語言,所在國家或者地區,以及當地的文化傳統定義一個軟體執行時的語言環境。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
linux locale是什麼?
Linux 命令之 locale
locale 是 Linux 系統中多語言環境的設定介面,在 Linux 中,使用 locale 命令來設定和顯示程式執行的語言環境,locale 會根據計算機使用者所使用的語言,所在國家或者地區,以及當地的文化傳統定義一個軟體執行時的語言環境。
通過 locale 來設定程式執行的不同語言環境,locale 由ANSI C提供支援。locale 的命名規則為<語言>_<地區>.<字元集編碼>,如zh_CN.UTF-8,zh代表中文,CN代表大陸地區,UTF-8表示字元集。在locale環境中,有一組變數,代表國際化環境中的不同設定。
<語言>_<地區>.<字元集編碼><@修正值>
zh_CN.utf8
zh:表示中文
CN:表示大陸地區
Utf8:表示字元集
de_DE.utf-8@euro
de:表示德語
DE:表示德國
Utf-8:表示字元集
euro:表示按照歐洲習慣加以修正
登入後複製
設定locale的根本就是設定一組總共12個LC開頭的變數,不包括LANG和LC_ALL
locale預設檔案存放位置: /usr/share/i18n/locales
列出所有啟用的 locale:
[root@htlwk0001host ~]# localeLANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"LC_NUMERIC="zh_CN.UTF-8"LC_TIME="zh_CN.UTF-8"LC_COLLATE="zh_CN.UTF-8"LC_MONETARY="zh_CN.UTF-8"LC_MESSAGES="zh_CN.UTF-8"LC_PAPER="zh_CN.UTF-8"LC_NAME="zh_CN.UTF-8"LC_ADDRESS="zh_CN.UTF-8"LC_TELEPHONE="zh_CN.UTF-8"LC_MEASUREMENT="zh_CN.UTF-8"LC_IDENTIFICATION="zh_CN.UTF-8"LC_ALL=
登入後複製
分別介紹下:
LANG:LANG的優先順序是最低的,它是所有LC_*變數的預設值,下方所有以LC_開頭變數(LC_ALL除外)中,如果存在沒有設定變數值的變數,那麼系統將會使用LANG的變數值來給這個變數進行賦值。如果變數有值,則保持不變
LC_CTYPE:用於字元分類和字串處理,控制所有字元的處理方式,包括字元編碼,字元是單位元組還是多位元組,如何列印等,非常重要的一個變數。
LC_NUMERIC:用於格式化非貨幣的數位顯示
LC_TIME:用於格式化時間和日期
LC_COLLATE:用於比較和排序
LC_MONETARY:用於格式化貨幣單位
LC_MESSAGES:用於控制程式輸出時所使用的語言,主要是提示資訊,錯誤資訊,狀態資訊,標題,標籤,按鈕和選單等
LC_PAPER:預設紙張尺寸大小
LC_NAME:姓名書寫方式
LC_ADDRESS:地址書寫方式
LC_TELEPHONE:電話號碼書寫方式
LC_MEASUREMENT:度量衡表達方式
LC_IDENTIFICATION:locale對自身包含資訊的概述
LC_ALL:它不是環境變數,它是一個宏,它可通過該變數的設定覆蓋所有LC_*變數,這個變數設定之後,可以廢除LC_*的設定值,使得這些變數的設定值與LC_ALL的值一致,注意LANG變數不受影響。
優先順序:LC_ALL > LC_* > LANG
[root@htlwk0001host ~]# locale -aC
C.utf8
en_AG
en_AU
en_AU.utf8
en_BW
en_BW.utf8
en_CA
en_CA.utf8
en_DK
en_DK.utf8
en_GB
en_GB.iso885915
en_GB.utf8
en_HK
en_HK.utf8
en_IE
en_IE@euro
en_IE.utf8
en_IL
en_IN
en_NG
en_NZ
en_NZ.utf8
en_PH
en_PH.utf8
en_SC.utf8
en_SG
en_SG.utf8
en_US
en_US.iso885915
en_US.utf8
en_ZA
en_ZA.utf8
en_ZM
en_ZW
en_ZW.utf8
POSIX
zh_CN
zh_CN.gb18030
zh_CN.gbk
zh_CN.utf8
zh_HK
zh_HK.utf8
zh_SG
zh_SG.gbk
zh_SG.utf8
zh_TW
zh_TW.euctw
zh_TW.utf8
登入後複製
export LC_ALL=zh_CN.utf8
export LANG=zh_CN.utf8
登入後複製
命令列中使用命令 source 下組態檔,使其生效
將註釋開啟即可,修改完成後,執行下 locale-gen 命令使其生效
#en_SG ISO-8859-1
en_US.UTF-8 UTF-8
#en_US ISO-8859-1
登入後複製
localectl set-locale LANG=en_US.UTF-8
登入後複製
LANG=「en_US.UTF-8」
LANGUAGE=「en_US:en」
登入後複製
LANG=en_AU.UTF-8
LC_COLLATE=C
LC_TIME=en_DK.UTF-8
登入後複製
source 使其生效
相關推薦:《》
以上就是linux locale是什麼的詳細內容,更多請關注TW511.COM其它相關文章!