使用ls -i命令找到文件或文件夹的节点编号
前面的就是节点号了,接下来使用find命令查询并且删除
-inum指根据节点号查询;-delete顾名思义就是删除操作了。这样就成功删除乱码文件了,值得注意的是,此方法只适用于删除文件或空的文件夹。(未考证)
或使用find的-exec参数执行rm命令
find . -inum 1046808 -exec rm {} -rf \; #这里可以直接使用. 或者是./ 使用-exec参数时要注意顺序 rm {} -rf
虽然提示我们找不到此文件或文件夹,但其实已经表明删除了。-exec作用是查找后执行命令,其中{}代表前面查询到的结果,空格+\;是结束符,其它就不说了。-exec后可以跟任何常用命令,因此这方法不但适用于文件夹,文件也可以。
对于文件夹,尤其是非空的文件夹,上面的方法就不适用了,要用到另外的参数来实现,首先相同的是查看乱码文件夹的节点
[[email protected] src]# ll -i
总用量 208572
918624 -rw-r--r-- 1 root root 289 5月 13 16:09 ntpdate.sh
1046799 drwxr-xr-x 2 root root 4096 5月 13 16:07 scripts
1046807 drwxr-xr-x 2 root root 4096 5月 13 18:09 test1
1046792 drwxr-xr-x 2 root root 4096 5月 13 16:06 webapp
[[email protected] src]# find . -inum 1046807 -exec rm {} -rf \;
find: “./test1”: 没有那个文件或目录
[[email protected] src]# find ./ -inum 1046807 -exec rm {} -rf \;