linux系統語系$lang


Linux LANG變量設置:定義系統的主語系環境

LANG 變量定義了 Linux 系統的主語系環境,這個變量的默認值如下:

[root@localhost src]# echo $LANG
zh_CN.UTF-8

 這是因為我們在安裝 Linux 時選擇的是中文安裝,所以默認的主語系變量是"zh_CN.UTF-8"。

查詢Linux 系統中支持多少種語系:

[root@localhost src]# locale -a | more
aa_DJ
aa_DJ.iso88591
aa_DJ.utf8
aa_ER
…省略部分輸出…

#查詢支持的語系
[root@localhost src]# locale -a | wc -l
735

查看當前系統使用的語系:

[root@localhost src]# locale
LANG=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-8n
LC_NAME="zh_CN.U 丁 F-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8n
LC_MEASUREMENT="zh_CN.U 丁 F-8"
LC_IDENTIFICATI0N=Mzh_CN.UTF-8M
LC_ALL= 

在 Linux 系統中,語系主要是 LANG 和 LC_ALL 變量,其他的變量會依賴這兩個變量的值而發生變化。

     LANG 是定義系統主語系的變量,

     LC_ALL 是定義整體語系的變量,一般使用 LANG 變量來定義系統語系。

我們還要通過文件 /etc/sysconfig/i18n 定義系統的默認語系,查看一下這個文件的內容,如下:

[root@localhost src]# cat /etc/sysconfig/i18n
LANG="zh_CN.UTF-8" 

 

當前語系與默認語系:

  默認語系是下次重啟之后系統所使用的語系;

  而當前系統語系是當前系統所使用的語系。

    如果系統重啟,則會從默認語系配置文件 /etc/sysconfig/i18n 中讀出語系,然后賦予變量 LANG,讓這個語系生效。也就是說,LANG 變量定義的語系只對當前系統生效;要想永久生效,就要修改 /etc/sysconfig/i18n 文件。

說到這里,我們需要解釋一下 Linux 中文支持的問題。是不是只要定義了語系為中文語系,如 zh_CN.UTF-8,就可以正確顯示中文了呢?這要分情況,如果是在圖形界面中,或者使用遠程連接工具(如 SecureCRT、Xshell 等),那么,只要正確設置了語系,是可以正確顯示中文的。當然,遠程接工具也要配置正確的語系環境。

如果是純字符界面(本地終端 tty1~tty6),是不能顯示中文的,因為 Linux 的純字符界面是不能顯示中文這么復雜的編碼的。如果非要在純字符界面中顯示中文,那么只能安裝中文插件,如 zhcon 等。

舉個例子,先來看看在遠程連接工具中顯示中文的情況,如下:

[raot@localhost src]# echo $LANG
zh_CN.UTF-8
#當前使用遠程連接工具,只要語系正確,就可以正確顯示中文
[root@localhost src]# df
文件系統 1K-塊 已用 可用 已用% 掛載點
/dev/sda3 19923216 1813532 17097616 10%/
tmpfs 312672 0 312672 0%/dev/shm
/dev/sda1 198337 26359 161738 15%/boot
#使用df命令可以看到中文是正常顯示的

 但如果是純字符界面呢?雖然 Linux 是中文安裝的,但純字符界面的語系卻是"en_US.UTF~8",如圖 1 所示。


圖 1 純字符界面的語系

我們更改語系為中文,看看會出現什么情況,如圖 2 所示。



圖 2 純字符界面設置中文語系


如果我們非要在純字符界面中設置中文語系,就會出現亂碼。怎么解決呢?安裝 zhcon 中文插件即可解決,安裝並不復雜,查詢一下安裝說明即可輕松安裝。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM