中文文件名乱码问题

出自Linux Wiki

在2007年6月9日 (六) 02:50由Chenxing (讨论 | 贡献)所做的修订版本
(差异) ←上一修订 | 最新修订 (差异) | 下一修订→ (差异)
Note.gif
注意:
本文解决的是文件名或文件夹名的编码问题,要查看转换文件内容的选项,请参考文件内容编码转换

经常遇到要把GBK或者UTF-8编码的文件转成其它编码的情况。(在utf8的locale中,要把文件复制到windows的分区中,或打包发送给使用Windows的用户,通常要把文件名转换成gbk码。而如果要把gbk的locale转成utf8的,则需要对文件名做编码转换。)手动操作文件夹很麻烦,工具convmv解决了这一问题。并支持批量转换。

Note.gif
注意:
不要在NTFS或FAT文件系统上做此种操作,否则可能产生意外结果。如果要在Linux中正确显示NTFS和 FAT的中文件名,请参阅挂载Windows分区

convmv存在于常见操作系统的源中。如果当前没有工具,可以直接安装。

convmv -f 源编码 -t 新编码 [选项] 文件名

常见有用的选项有:

-r 递归处理子文件夹
--notest 真正进行操作,请注意在默认情况下是对文件进行真实操作的,而只是试验。
--unescape 可以做一下转义,比如把%20变成空格,如果你不知道这是在做什么,就不要尝试了。

--Chenxing 10:50 2007年6月9日 (CST)

个人工具
简体繁体转换