Linux文件系统中少量文件乱码的补救措施

当解压来自于非Linux系统生成的压缩包时,通常会发生因为默认编码不同而导致解压出的文件在Linux系统中显示为乱码。这类乱码的文件用ls所显示出的文件名,并不能间接使用。例如先用ls显示文件名,然后复制粘贴,再作为ls的参数会出现“不存在该文件”的问题。

即使文件名无法间接使用,但还是能够在管道中直接使用的。因此一个显然的补救方法就是通过inode值得到文件名,然后用mv修改文件名为正确的编码的名称,即:

find . -inum FILE_INODE_VALUE -print0 | xargs -0 -I '{}' mv {} FILE_NAME

由于使用inode,因此对文件夹也适用。

留下评论