文字的編碼轉換( iconv 和 convmv )

iconv 指令轉換檔案內容的文字編碼的範例:
iconv -l 查看 iconv 支援的編碼格式
1.把繁體中文 Big5(big5) 轉換成 Unicode(utf8):
iconv -f big5 -t utf8 INPUTFILE > OUTPUTFILE
2.把 IBM EBCDIC(chinte) 轉換成繁體中文 EUC(eucTW):
iconv --from-code chinte --to-code eucTW INPUTFILE > OUTPUTFILE



convmv 轉換「檔名」編碼的程式
下載:
wget http://j3e.de/linux/convmv/convmv-version.tar.gz

安裝:
tar zxvf convmv-VERSION.tar.gz
cd convmv-VERSION
sudo make install

convmv 其實是 perl script, 所以 make install 即可, 沒有主機的 root 權限也可以直接執行.
轉換檔名編碼, 以 UTF-8 轉 BIG5 為例:
convmv -f UTF-8 -t BIG5 FILE2CONVERT.txt

列出可用的編碼:
convmv --list

轉換檔名中有 %xx 這種 16 進位的編碼:
convmv --unescape CONVERT%20.txt

把檔名中的字母全轉換成小寫:
convmv --lower BLAH.txt

要注意的地方是預設只會把秀出轉換的結果, 需加上 --notest 參數才會執行

其他參數
-r 連子目錄的檔案一起轉換
-i 互動模式, 一個一個檔案詢問是否轉換等等
--help 看說明.

留言

這個網誌中的熱門文章

使用 Excel 計算2個地點之間的直線距離

LINE 儲存的檔案傳到 email 不方便 很不方便 非常不方便 但是有解的筆記

Excel 巨集合併多個 Excel 檔案