Debian 終端機 telnet 中文亂碼問題
目前常見的繁體中文編碼有Big5 和 utf-8 兩種。
其中Big5因為是較早期的編碼而有著名的 "許功蓋" 問題。
(這三個字無法正常顯示,而要另行處理的情形,算是一種編碼上的Bug。可參考http://zh.wikipedia.org/wiki/%E5%A4%A7%E4%BA%94%E7%A2%BC)
但也因為早期的關係而使得使用的人也多,像是著名的Ptt.cc就是預設用Big5碼。
不過通常新版的Debian繁體中文的預設編碼都是utf-8了。
而在 Debian 底下雖然有 pcmanX 可以正常的上 ptt , 但是有時候也會想要直接用 telnet 去連。
於是就出現亂碼了...
不過 Linux 底下有神奇的 luit 的指令可以拿來臨時轉換編碼:
luti -encoding big5 telnet ptt.cc
這樣就可以讓讓 telnet 所顯示的所有訊息都從Big5 編碼轉換成環境預設的編碼。
如果不知道系統有安裝哪些編碼的話,可以用locale -a 這個指令來查看。
如果沒有你要的編碼字集的話,就去修改/etc/locale.gen這個檔。
進去裡面把要增加的編碼字集(ex: zh_TW Big5)前面的 # 給去掉,存檔之後sudo locale-gen 。
然後locale -a 就會看到你要的字集了。
而單單執行 locale 的話,則是會顯示你目前系統的預設狀況。
想改變系統預設狀況的話,就用export LC_ALL=zh_TW.Big5
其中Big5因為是較早期的編碼而有著名的 "許功蓋" 問題。
(這三個字無法正常顯示,而要另行處理的情形,算是一種編碼上的Bug。可參考http://zh.wikipedia.org/wiki/%E5%A4%A7%E4%BA%94%E7%A2%BC)
但也因為早期的關係而使得使用的人也多,像是著名的Ptt.cc就是預設用Big5碼。
不過通常新版的Debian繁體中文的預設編碼都是utf-8了。
而在 Debian 底下雖然有 pcmanX 可以正常的上 ptt , 但是有時候也會想要直接用 telnet 去連。
於是就出現亂碼了...
不過 Linux 底下有神奇的 luit 的指令可以拿來臨時轉換編碼:
luti -encoding big5 telnet ptt.cc
這樣就可以讓讓 telnet 所顯示的所有訊息都從Big5 編碼轉換成環境預設的編碼。
如果不知道系統有安裝哪些編碼的話,可以用locale -a 這個指令來查看。
如果沒有你要的編碼字集的話,就去修改/etc/locale.gen這個檔。
進去裡面把要增加的編碼字集(ex: zh_TW Big5)前面的 # 給去掉,存檔之後sudo locale-gen 。
然後locale -a 就會看到你要的字集了。
而單單執行 locale 的話,則是會顯示你目前系統的預設狀況。
想改變系統預設狀況的話,就用export LC_ALL=zh_TW.Big5
留言
張貼留言