linux顯示亂碼怎么辦?
Linux終端中文顯示亂碼
今天,幫我們同學(xué)處理一下中文顯示亂碼的問題。這個(gè)是個(gè)國內(nèi)Linux用戶煩惱的問題,由于大部分的Linux發(fā)行版都是以英語為主體的,而且英文在通用性和穩(wěn)定性上都比中文要好一些,各種奇怪的BUG也要少一點(diǎn)。所以,強(qiáng)烈建議使用英文的系統(tǒng)。
我們知道我們的操作系統(tǒng)是無所謂中文版和英文版的,無論是windows還是Linux,系統(tǒng)發(fā)行的時(shí)候全世界都是一樣的內(nèi)核,系統(tǒng)呈現(xiàn)給我們是英文還是中文,完全取決于你選擇的語言包。不同國家的人在安裝使用的時(shí)候選擇屬于自己國家的語言包,應(yīng)用程序中的語言也不是寫死的,它根據(jù)系統(tǒng)的設(shè)置來調(diào)用相關(guān)的語言,所以,一個(gè)應(yīng)用程序?qū)懗鰜聿唤?jīng)過修改,全世界不同國家的用戶都可以以母語界面使用它,這就事所謂的internationalization(國際化),簡稱 i18n。這也是未來軟件的發(fā)展趨勢。
那么,如果我在系統(tǒng)中安裝了不同的語言包和不同的字體,系統(tǒng)是如何判斷我所要的語言界面并調(diào)用相關(guān)的字體的呢?系統(tǒng)中那些文件和變量在控制這些呢?
推薦:《Linux教程》
可以使用locale命令,查看當(dāng)前系統(tǒng)默認(rèn)采用的字符集
# locale
在RedHat/CentOS系統(tǒng)下,記錄系統(tǒng)默認(rèn)使用語言的文件是/etc/sysconfig/i18n,如果默認(rèn)安裝的是中文的系統(tǒng),i18n的內(nèi)容如下:
LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
其中LANG變量是language的簡稱,稍微有英語基礎(chǔ)的用戶一看就看出來這個(gè)變量是決定系統(tǒng)的默認(rèn)語言的,即系統(tǒng)的菜單、程序的工具欄語言、輸入法默認(rèn)語言等。SYSFONT是system font的簡稱,決定系統(tǒng)默認(rèn)用哪一種字體。SUPPORTED變量決定系統(tǒng)支持的語言,即系統(tǒng)能夠顯示的語言。需要說明的是,由于計(jì)算機(jī)起源于英語國家,因此,不管你把這些變量設(shè)置成什么,英語總是默認(rèn)支持的,而且不管用什么字體,英文字體總包含在其中。
那么如何顯示中文呢?
1、系統(tǒng)必須安裝中文語言包才行
# yum -y groupinstall chinese-support
2、僅僅有語言包還不行,我們得設(shè)置相應(yīng)的字符集
## 臨時(shí)生效 # export LANG="zh_CN.UTF-8" # 設(shè)置為中文 # export LANG="en_US.UTF-8" # 設(shè)置為英文,我比較喜歡這樣 export ## 永久生效, 編輯/etc/sysconfig/i18n(最好reboot一下) LANG="zh_CN.UTF-8" ## 或者,編輯 /etc/profile配置文件,添加如下一行 export LANG="zh_CN.UTF-8" # 重新載入 # . /etc/profile ## 查看當(dāng)前的字符集 # echo $LANG
好了,經(jīng)過上面的設(shè)置,在終端上應(yīng)該能夠顯示中文了。
3、ssh遠(yuǎn)程終端亂碼
如果SSH終端還是亂碼,那么我們也需要對終端軟件的編碼進(jìn)行設(shè)置。
Xshell:
SecureCRT:
4、如果終端還是中文亂碼腫么辦?
對SSH軟件進(jìn)行設(shè)置,選擇一個(gè)支持中文的字體。
Linux Windows 之間相互需要修改文件,然后亂碼。
拷貝上去后經(jīng)常發(fā)現(xiàn)中文顯示亂碼。。原因是Windows中默認(rèn)的文件格式是 GBK(gb2312),而Linux一般都是UTF-8。比較繁瑣的方法是在windows下用程序把內(nèi)容轉(zhuǎn)換為utf-8編碼格式的,但是相當(dāng)麻煩, 而且遇到一個(gè)文件轉(zhuǎn)一回。下面介紹一下,在Linux中如何一勞永逸的解決這個(gè)問題,查看文件的編碼及如何進(jìn)行對文件進(jìn)行編碼轉(zhuǎn)換。
為了避免這些問題,最好的方式就是統(tǒng)一編碼。對于文本文件,都統(tǒng)一保存為UTF8格式,windows下面不要使用word,記事本,推薦Sublime text, 或者notepad++。
以上就是linux顯示亂碼怎么辦?的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
每個(gè)人都需要一臺(tái)速度更快、更穩(wěn)定的 PC。隨著時(shí)間的推移,垃圾文件、舊注冊表數(shù)據(jù)和不必要的后臺(tái)進(jìn)程會(huì)占用資源并降低性能。幸運(yùn)的是,許多工具可以讓 Windows 保持平穩(wěn)運(yùn)行。
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://m.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號