Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101034256
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-03-22 00:14:21

Ubuntu下默认文件编码是utf-8的,一般的编辑器也都支持gbk,gb2312编码,但有些时候还是需要把文档从默认的gbk格式转换成utf-8格式的,比如网上下载的电子书在手机上看会出现半个字,转成utf-8就没这个问题了。

一般转换编码都是用iconv命令来转换,命令格式如下

$iconv -f gb18030 -t utf-8 file1.txt > file2.txt

说实话这个命令不好使,一方面容易重复转换,另一方面不支持通配符,无法成批转换,文件少了还好说,要是一大堆文件岂不是要累死?

于是在google上淘宝,淘得一个更好的傻瓜型命令行工具enca,它不但能智能的识别文件的编码,而且还支持成批转换。

1.安装

$sudo apt-get install enca

2.转换

命令格式如下

$enca -L 当前语言 -x 目标编码 文件名

例如要把当前目录下的所有文件都转成utf-8

$enca -L zh_CN -x utf-8 *

不过用的时候发现有一部分文件无法传转,具体原因不祥,等有时间再研究研究,不过enca会把无法转换的文件告诉你的。对于这些不能转的文件,可以用gedit另存为的方式转,虽然这法笨点,但挺好使的。
阅读(554) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~