一·查看字符集
字符集在系統中體現形式是一個環境變量,以centos6.5爲例,其查看當前終端使用字符集的方式能夠有如下幾種方式:
shell
1、[root@david ~]# echo $LANGvim
zh_CN.GB18030centos
2、[root@david ~]# env |grep LANGide
LANG=zh_CN.GB18030編碼
LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CNspa
3、[root@david ~]# export |grep LANGit
declare -x LANG="zh_CN.GB18030"io
declare -x LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"class
4、[root@david ~]# localetest
LANG=zh_CN.GB18030
LC_CTYPE="zh_CN.GB18030"
LC_NUMERIC="zh_CN.GB18030"
LC_TIME="zh_CN.GB18030"
LC_COLLATE="zh_CN.GB18030"
LC_MONETARY="zh_CN.GB18030"
LC_MESSAGES="zh_CN.GB18030"
LC_PAPER="zh_CN.GB18030"
LC_NAME="zh_CN.GB18030"
LC_ADDRESS="zh_CN.GB18030"
LC_TELEPHONE="zh_CN.GB18030"
LC_MEASUREMENT="zh_CN.GB18030"
LC_IDENTIFICATION="zh_CN.GB18030"
LC_ALL=
上面均說明LC_CTYPE(字符辨識編碼)表示這個系統的系統如今使用的字符集是zh_CN.GB18030,LC_NUMERIC(數字系統的顯示訊息)等其它與語言相關的變量。一般若是其它的語言變量都未設定,僅設定LANG這個變量就能夠缺省代替全部其它變量了。
2、修改字符集的方式
需注意的是:若是默認語言是en_US.UTF-8,在Linux的字符和圖形界面下都是沒法顯示和輸入中文的。若是默認語言是中文,好比zh_CN.GB18030 或者zh_CN.gb2312,字符界面沒法顯示和輸入,圖形界面能夠。
修改的方式有以下兩種:
1、直接設置變量的方式修改,命令以下兩條命令:
[root@david ~]# LANG=xxx 或者 export LANG=xxx;
[root@david ~]# LC_ALL=」xxx」 或者 export LC_ALL=」xxx」;
注:xxx爲欲修改成的字符集
查看標準的字符集的方法,locale –a命令,經常使用的有zh_CN.GB23十二、
zh_CN.GB18030或者zh_CN.UTF-八、en_US.UTF-8等
可是上述修改方式只會在當前shell中生效,新建shell此環境變量消失。
故平時登陸系統執行「LANG= 」這個命令的時候顯示的就沒有亂碼的緣故,意思就是取消了字符集的顯示,取消字符集還能夠執行[root@david ~]# unset LANG這個命令。
2、修改文件方式,經過修改/etc/sysconfig/i18n文件控制
[root@david ~]# vim /etc/sysconfig/i18n
LANG="zh_CN.GB18030" 即爲系統的語言
SUPPORTED="zh_CN.UTF-8:zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
修改文件保存退出以後要生效要執行以下命令纔可生效
[test@pan ~]$ source /etc/sysconfig/i18n