解決Linux下中文顯示亂碼問題

我的工作環境中,服務器大部分都是Linux系統,辦公電腦都是Windows。使用服務器的時候都是通過一個SSH客戶端遠程登錄到Linux服務器上去操作,經常會發生因爲系統環境變量設置不合適,導致有中文顯示的地方會顯示爲亂碼。

一個是運行程序後輸出中文的時候,一個是用vi命令編輯一個有中文的文件的時候,一個是執行包含中文的Oracle腳本的時候。

要讓運行程序後輸出的中文正常顯示,修改~/.bash_profile文件,增加下列行。

LANG=zh_CN.UTF-8;
export LANG
LC_ALL=zh_CN.UTF-8;
export LC_ALL


要讓vi命令編輯一個有中文的文件,需要修改~/.vimrc文件,添加

set encoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936,gb18030,latin1
set termencoding=utf-8


如果上面兩個文件改了以後還顯示亂碼,那就是SSH客戶端的設置有問題,以SecureCRT爲例,需要

Options -> Session Options -> Appearance ->Character encoding

設置爲UTF-8



要在執行包含中文的Oracle腳本的時候正常顯示中文,修改~/.bash_profile文件,增加:

NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;
export NLS_LANG



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章