linux下删除乱码文件名实例教程

发布时间:2019-11-13编辑:脚本学堂
linux系统下删除乱码文件的简单方法,在linux下的乱码文件用普通方法无法删除,linux中文乱码问题,可以参考下这里的删除文件方法。

linux乱码文件名怎么删除?

在linux系统中,当文件名为乱码时,不能通过键盘输入文件名,不过,可以在终端下就不能直接利用rm,mv等命令管理文件了。

每个文件都有一个i节点号,可以考虑通过i节点号来管理文件。

首先,取得文件的i节点号。

通过ls命令的-i选项获得:
 

[root@mail ~]# ll -i
19694952 -rw-r--r--  1 apache apache     381 Nov 26  2009 api.php
19698337 -rw-r--r--  1 apache apache     406 Jul  8  2008 plcxue.com.txt

每个文件名前面的数字就是文件的i节点号。

有了文件的i节点号,就可以利用find命令的-inum选项配合常用的文件管理命令进行文件管理了。

例如,删除plcxue.com.txt文件,命令:
 

[root@mail ~]# find . -inum 19698337 -exec rm {} ;

看plcxue.com.txt文件被删除了。

因为机子上暂时没有文件名为乱码的文件做为示例,要重命名一个文件,命令:
 

[root@mail ~]# ll -i
19694952 -rw-r--r--  1 apache apache     381 Nov 26  2009 api.php
19698337 -rw-r--r--  1 apache apache     406 Jul  8  2008 plcxue.com.txt
[root@mail ~]# find . -inum 19698337 -exec mv {} plcxue.com ;
[root@mail ~]# ll -i
19694952 -rw-r--r--  1 apache apache     381 Nov 26  2009 api.php
19698337 -rw-r--r--  1 apache apache     406 Jul  8  2008 plcxue.com
 

如此,plcxue.com.txt文件被重命名为plcxue.com了。

注意,在linux find命令中的“{}”表示find命令找到的文件,在 -exec 选项执行mv命令时,会利用按i节点号找到的文件名替换掉“{}”

有关linux find命令的用法,参阅: