Ubuntu下Windows文件名乱码[转]

原文链接

把一些Windows上创建的文件发送到Ubuntu后,这些文件(文件夹、压缩包等)的文件名会乱码,原因为windows下的文件名以GBK编码,而Ubuntu下的文件 名为utf-8编码。

convmv

convmv就是更改文件名编码方式的一个工具。比如

1
sudo convmv -f gbk -t utf-8 -r –notest /home

就是将/home目录下原来文件名是gbk编码方式的全部改为utf-8格式的。这里 -f 后面为原来的编码方式,-t 后面是要更改为的编码方式, -r 表示递归形式处理这个目录下面的所有文件, –notest 表示马上执行,而不是仅仅测试而已。另外这命令好像要root才能执行,因此要加上 sudo。

iconv

iconv是更改文件编码方式的一个工具:

1
sudo iconv -f gbk -t utf-8 -o outfile infile

-f为原来的编码方式,-t 为输出文件的编码方式, -o表示输出文件名,这利用outfile表示,最后跟上要更改编码方式的文件名sourcefile 。

很多时候用这两种方式也无法解决乱码问题,令人无奈