1. 程式人生 > >locale的設定中LANG、LC_ALL、LANGUAGE

locale的設定中LANG、LC_ALL、LANGUAGE

locale的設定:

LC_ALL和LANG優先順序的關係:LC_ALL > LC_* > LANG

locale把按照所涉及到的文化傳統的各個方面分成12個大類,這12個大類分別是:
1、字元輸入(LC_CTYPE)
2、數字(LC_NUMERIC)
3、比較和排序習慣(LC_COLLATE)
4、時間顯示格式(LC_TIME)
5、貨幣單位(LC_MONETARY)
6、資訊:主要是提示資訊,錯誤資訊,狀態資訊,標題,標籤,按鈕和選單等(LC_MESSAGES)
7、姓名書寫方式(LC_NAME)
8、地址書寫方式(LC_ADDRESS)
9、電話號碼書寫方式(LC_TELEPHONE)
10、度量衡表達方式 (LC_MEASUREMENT)
11、預設紙張尺寸大小(LC_PAPER)
12、對locale自身包含資訊的概述(LC_IDENTIFICATION)

使用locale檢視當前系統設定:

[[email protected] ~]# locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE=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_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=

有兩條報錯:

locale: Cannot set LC_CTYPE to default locale: No such file or directory

locale:無法將LC_CTYPE設定為預設locale:沒有這樣的檔案或目錄

locale: Cannot set LC_ALL to default locale: No such file or directory

無法將LC_ALL設定為預設語言環境:沒有這樣的檔案或目錄

說明這兩個值設定有問題

可以通過locale支援的編碼:

[[email protected] application]# locale -a | grep zh
zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
zh_HK
zh_HK.big5hkscs
zh_HK.utf8
zh_SG
zh_SG.gb2312
zh_SG.gbk
zh_SG.utf8
zh_TW
zh_TW.big5
zh_TW.euctw
zh_TW.utf8

 

現在知道LC_ALL優先順序是最高的,可以直接設定LC_ALL = utf8中文編碼

1:vim 開啟/etc/profile檔案在最下面新增如下程式碼

export LC_ALL="zh_CN.UTF-8"

再次檢視locale

[[email protected] application]# locale
LANG=en_US.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=zh_CN.UTF-8

LC_ALL已改變,無報錯情況,退出重新登入即可