2010年3月8日 星期一

pietty(putty) ssh login 亂碼的解決方法

.

問題雖然簡單,但以後還是有可能會遇到,紀錄一下解決問題的過程

遇到的問題是,使用pietty/putty ssh login進linux後,build code的error message會變成亂碼
雖然大部份網頁的解答是使用pietty,然後去修改編碼方式
而pietty雖然可以動態的的改變編碼,但有些問題不是改pietty的編碼方式就解得了的

簡單的說,問題在於中文的編碼方式有big5和unicode兩種
而不是只有gcc的message才有中文亂碼的問題,只有folder中有中文檔名或中文資料夾名稱,那麼ls的結果中一樣也會出現亂碼
因此要判斷亂碼是否解決的依據不一定要再編譯程式碼,只要ls即可

解法就是login後
若系統中文編碼是big5,在提示符號打LANG=zh_TW.Big5
若系統中文編碼是unicode,在提示符號打LANG=zh_TW.UTF-8
然後在pietty中選對應的編碼呈現方式後,就不會出現亂碼了
若不知道系統是哪種,兩種都試一次就知道結果了

若不想每次ssh login後都執行一次LANG=zh_TW.XXX,可以透過修改.bashrc來達到每次ssh login後自動執行LANG=zh_TW.XXX

.

沒有留言: