Linux下inode删除文件技巧
find . -inum [inode编号] -exec rm -i {} ;登录后复制 **1. 创建包含特殊字符的文件:**```bash $ cd /tmp
$ touch “/+Xy /+/8″
$ ls
<div style="margin-top: 2em; margin-bottom: 1em;">**2. 使用`rm`命令尝试删除:**</div>```bash $ rm /+Xy /+/8登录后复制 **3. 获取文件的inode编号:**```bash $ ls -il
342137 -rw-r–r– 1 tw tw 0 2008-11-20 08:57 /+Xy /+/8
<div style="margin-top: 2em; margin-bottom: 1em;">**4. 使用`find`命令删除文件 (342137为inode编号):**</div>```bash $ find . -inum 342137 -exec rm -i {} ;登录后复制
例如,系统中存在名为“2008/11/20”的文件,rm命令无法直接删除。这是因为Linux系统不允许创建此类文件名,但Windows系统可以。因此,结合inode编号的find命令就显得非常有用。
**尝试使用引号删除文件名包含特殊字符的文件。**例如,对于文件名包含空格或特殊符号的文件,例如“–help”,可以使用`rm “–help”`进行删除。 **使用`unlink`命令删除文件。**`unlink`命令调用`unlink`函数,可以删除指定文件。 **使用`mtools`删除Windows下创建的非法文件。**当`find`命令结合inode编号失效时,此方法非常有用,尤其适用于删除autorun.inf病毒创建的文件夹。
文章版权声明:除非注明,否则均为泥小猴系统网网络收集而来,如有任何问题请联系站长。