因为编码诱因,在linux服务器上上传、创建英文文件或目录时,会形成乱码,假如想删掉它,用rm是删掉不了的,这些情况下linux文件乱码,用find可以删掉乱码的文件或目录。
在linux文件系统中,每位文件都有一个i节点号,可以通过i节点号来管理文件。首先步入乱码文件或目录所在的目录
使用ls-i找到文件或目录的inode,
文件或目录上面的数字字符串就是inodelinux文件乱码,接出来使用find命令查询而且删掉此文件或目录。
注意:此方式只适用于删掉文件或空的文件夹。
非空文件夹如何删掉呢?
首先也是先查inode,之后用如下命令即可:
代码语言:javascript
复制
find -inum 2236429 -exec rm -rf {} ;
会提示找不到此文件或文件夹,但显然早已删掉了。
怎样在Linux下删掉文件名是乱码或则带有特殊字符的文件。
明天遇见一个问题,一个文件名是“-MXV9.log”linux命令大全,直接用rm删掉的时侯就报错
[localhost]rm-MXV9.logrm:illegaloption—Mrm:illegaloption—Xrm:illegaloption—Vrm:illegaloption—9rm:illegaloption—.rm:illegaloption—lrm:illegaloption—orm:illegaloption—gUsage:rm[-Rfir]file…
开始想着带顿号删,发觉带顿号删掉也一样报illegaloption的错
找了一些资料,发觉这些文件可以这样删掉
先ls-i查到文件的inode,之后用find命令删掉
代码语言:javascript
复制
[localhost]ls -ilrt
100985 -rw-r--r-- 1 tbcs users 0 Apr 18 11:32 -MXV9.log
最上面一列的100985就是文件的inode,在主机上执行如下命令即可删掉文件
代码语言:javascript
复制
[localhost]find ./ -inum 100985 -exec rm {} ;
这个方式适用于文件名为乱码或则带有特殊字符的文件删掉
例如说文件名是“*.txt”如果直接执行rm*.txtlinux运维博客,会把文件夹中所有以.txt结尾的文件全部删掉了
总结
以上就是这篇文章的全部内容了,希望本文的内容对你们的学习或则工作具有一定的参考学习价值,感谢你们对ZaLou.Cn的支持。假如你想了解更多相关内容请查看下边相关链接
本文原创地址://gulass.cn/zlfwqssclmwj.html编辑:刘遄,审核员:暂无