要改編碼之前必須先修改locale,locale的設定檔在/etc/locale.gen,要修改為
en_US ISO-8859-1
zh_TW BIG5
zh_TW.UTF-8 UTF-8
然後再輸入
locale-gen
,這樣子就會幫你產生這些編碼的檔案。接下來要修改環境變數,因為之前是用Big5的方式,所以現在要修改家目錄的.bashrc,在檔案的最下面增加兩行
export LC_CTYPE=zh_TW.UTF-8
export LC_MESSAGES=zh_TW.UTF-8
如此以後登入主機就會變成UTF-8的編碼了。不過到此為止只是確保以後所產生的檔案均為UTF-8,可是以前的檔名卻還是Big5編碼,我們必須使用convmv這個程式幫忙轉碼。
convmv -f big5-eten -t utf8 -r --notest /家目錄
-f big5-eten
這行是原來的編碼-t utf8
這行是要轉換的編碼-r
是使用遞迴(recursive)的方式做轉換--notest
直接做編碼轉換,如果沒加這個參數就不會做編碼的轉換再來要做檔案內容的編碼轉換,我們要使用iconv來做內容轉換
iconv -f big5 -t utf-8 來源檔 -o 目的檔
-f big5
原來的編碼-t utf-8
要轉換成的編碼這個動作完成之後,以後就可以使用純unicode的環境了。
參考資料:
[2007-02-12] 設定或修改 locale
Debian Chinese Linux Locale
Unicode From DebianWiki
1 則留言:
你好~
我按照你這篇文章
想說要轉換檔名
可是我下了那指令發現我沒有那指令
因為我沒有裝
所以
我下了
sudo apt-get install convmv
卻發現
讀取套件清單中... 完成
了解套件依存關係中
Reading state information... 完成
用『apt-get -f install』指令或許能修正這些問題。
下列的套件有無法滿足的依存關係:
python2.5: 依存關係: python2.5-minimal (= 2.5.1-0ubuntu1) 但是『2.5.1~rc1-0ubuntu3』卻將被安裝。
E: 無法滿足的相依關係。請嘗試不指定套件明成來執行“apt-get -f install”(或指>
定一個解決辦法)。
請問有無解決之道呢?
版主回覆:(06/07/2008 02:26:34 PM)
你要不要試著用aptitude來安裝看看呢?
dependency的問題實在是有點麻煩,用aptitude說不定可以解決
張貼留言