发新帖我要提问
12
返回列表
打印
[资料分享与下载]

linux 文件编码格式转换

[复制链接]
楼主: niuyaliang
手机看帖
扫描二维码
随时随地手机跟帖
21
niuyaliang|  楼主 | 2015-2-28 18:40 | 只看该作者 回帖奖励 |倒序浏览
六、
Linux下文件名编码批量转换convmv
由于FC将字符编码统一成了UTF8,原来在gb18030下建立的ext3分区中的文件和目录,一挂载到FC上就显示成乱码。google遍整个互联网,说对于目录名和文件名,有一个叫convmv的软件可以对其进行自动转换。

使用特权

评论回复
22
niuyaliang|  楼主 | 2015-2-28 18:40 | 只看该作者
今日下载了convmv,摸索了一套使用方法如下:
convmv -f code1 -t code2 -r
code1:分区原来使用的字符集编码。支持gb2312、gbk、big5,不支持gb18030和big5-hkscs。
code2:预转换到的字符集编码。对于FC,这里填写utf8
-r 参数:转换子目录。
dir:要转换的目录,当前目录用./表示。

使用特权

评论回复
23
niuyaliang|  楼主 | 2015-2-28 18:40 | 只看该作者
回车执行,这个时候convmv会显示执行的结果,但不会真正对文件进行修改。并提示使用--replace参数进行修改。

使用特权

评论回复
24
niuyaliang|  楼主 | 2015-2-28 18:41 | 只看该作者
七、
批量转换文件的编码
for i in `find ./ -name *.htm` ; do echo $i;iconv -f gb18030 -t utf8 $i -o /tmp/iconv.tmp;mv /tmp/iconv.tmp $i; done

使用特权

评论回复
25
niuyaliang|  楼主 | 2015-2-28 18:42 | 只看该作者
find -name “*.htm“ \
-exec iconv -f gb2312 -t utf8 ‘{}‘ -o /tmp/iconv.tmp \; \
-exec mv /tmp/iconv.tmp ‘{}‘ \;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则