linux環境下輕鬆搞定檔案編碼

來源:互聯網
上載者:User

通常來說,Windows中預設的檔案格式是GBK(gb2312),而Linux一般都是UTF-8,所以Linux下開啟windows的檔案會有亂碼的情況。另外,有時要將檔案進行編碼轉換,如將簡體中文轉換為繁體中文。

基於以上情況,本文將就在linux下查看和轉換檔的編碼進行說明。

1.查看檔案的編碼

1)在Vim中可以直接查看檔案編碼

     :set fileencoding    即可顯示檔案編碼格式。 

2)enca查看檔案編碼

     # enca filename        直接用enca加檔案名稱查看     # enca -L zh_CN filename     註:enca對某些GBK編碼的檔案識別不是很好,識別時會出現:unrecognized encoding.

2.轉換檔的編碼

1)在Vim中直接進行轉換檔編碼,比如將一個檔案轉換成utf-8格式

    :set fileencoding=utf-8

2)enconv 轉換檔編碼,比如要將一個GBK編碼的檔案轉換成UTF-8編碼,如:

     # enconv -L zh_CN -x UTF-8 filename     # enca -L zh_CN -x UTF-8 < file1 > file2        不覆蓋原檔案

3)iconv 轉換,iconv的命令格式如下:

    # iconv -f encoding -t encoding inputfile    # iconv –l    查詢可用編碼    # for i in `find ./ -name *.html`;do echo $i;iconv –f gb2312 –t big5 $i –o /tmp/iconv.tmp;mv /tmp/iconv.tmp $i;done    

批量轉換檔編碼執行個體之一

3.檔案名稱編碼轉換

Linux與windows間拷貝檔案,有時檔案名稱會出現亂碼,是因為Windows的檔案名稱中文編碼預設為GBK,而Linux預設的檔案名稱為UTF8。在Linux中有個工具,convmv,可以對檔案名稱進行GBK和UTF的相互轉換。

用法:

Convmv –f 源編碼 –t 新編碼 [option] filename

安裝enca

下載相關rpm包。地址http://rpmfind.net/linux/RPM/dag/redhat/el5/i386/ )
我下載的是:enca-1.10-1.el5.rf.i386.rpm和enca-devel-1.10-1.el5.rf.i386.rpm

安裝:

   # rpm -ivh enca-1.10-1.el5.rf.i386.rpm   # rpm -ivh  enca-devel-1.10-1.el5.rf.i386.rpm

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.