您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Linux終端中文顯示亂碼的解決方法,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
我們知道我們的操作系統是無所謂中文版和英文版的,無論是windows還是Linux,系統發行的時候全世界都是一樣的內核,系統呈現給我們是英文還是中文,完全取決于你選擇的語言包。不同國家的人在安裝使用的時候選擇屬于自己國家的語言包,應用程序中的語言也不是寫死的,它根據系統的設置來調用相關的語言,所以,一個應用程序寫出來不經過修改,全世界不同國家的用戶都可以以母語界面使用它,這就事所謂的internationalization(國際化),簡稱 i18n。這也是未來軟件的發展趨勢。
那么,如果我在系統中安裝了不同的語言包和不同的字體,系統是如何判斷我所要的語言界面并調用相關的字體的呢?系統中那些文件和變量在控制這些呢?
可以使用locale命令,查看當前系統默認采用的字符集
# locale
在RedHat/CentOS系統下,記錄系統默認使用語言的文件是/etc/sysconfig/i18n,如果默認安裝的是中文的系統,i18n的內容如下:
LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
其中LANG變量是language的簡稱,稍微有英語基礎的用戶一看就看出來這個變量是決定系統的默認語言的,即系統的菜單、程序的工具欄語言、輸入法默認語言等。SYSFONT是system font的簡稱,決定系統默認用哪一種字體。SUPPORTED變量決定系統支持的語言,即系統能夠顯示的語言。需要說明的是,由于計算機起源于英語國家,因此,不管你把這些變量設置成什么,英語總是默認支持的,而且不管用什么字體,英文字體總包含在其中。
那么如何顯示中文呢?
1、系統必須安裝中文語言包才行
# yum -y groupinstall chinese-support
2、僅僅有語言包還不行,我們得設置相應的字符集
## 臨時生效 # export LANG="zh_CN.UTF-8" # 設置為中文 # export LANG="en_US.UTF-8" # 設置為英文,我比較喜歡這樣 export ## 永久生效, 編輯/etc/sysconfig/i18n(最好reboot一下) LANG="zh_CN.UTF-8" ## 或者,編輯 /etc/profile配置文件,添加如下一行 export LANG="zh_CN.UTF-8" # 重新載入 # . /etc/profile ## 查看當前的字符集 # echo $LANG
好了,經過上面的設置,在終端上應該能夠顯示中文了。
3、ssh遠程終端亂碼
如果SSH終端還是亂碼,那么我們也需要對終端軟件的編碼進行設置。
Xshell:
SecureCRT:
4、如果終端還是中文亂碼腫么辦?
對SSH軟件進行設置,選擇一個支持中文的字體。
Linux <---> Windows 之間相互需要修改文件,然后亂碼。
拷貝上去后經常發現中文顯示亂碼。。原因是Windows中默認的文件格式是 GBK(gb2312),而Linux一般都是UTF-8。比較繁瑣的方法是在windows下用程序把內容轉換為utf-8編碼格式的,但是相當麻煩, 而且遇到一個文件轉一回。下面介紹一下,在Linux中如何一勞永逸的解決這個問題,查看文件的編碼及如何進行對文件進行編碼轉換。
為了避免這些問題,最好的方式就是統一編碼。對于文本文件,都統一保存為UTF8格式,windows下面不要使用word,記事本,推薦Sublime text, 或者notepad++。
關于Linux終端中文顯示亂碼的解決方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。