阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

教你Linux下如何使用inode删除文件

27次阅读
没有评论

共计 817 个字符,预计需要花费 3 分钟才能阅读完成。

导读 文件的 inode 定义了文件的大小、所有人等文件的特征。每个文件和目录都有自己唯一的 inode 数字。但是为什么用 inode 来删除文件,而不是用常用的 rm -rf 命令呢? 原因是,如果你不小心创建了含有特殊字符的文件和目录,比如带有 ? * ^ 的文件名,就会很难删除。下面我们就来介绍一下:1)如何找出文件和目录的 inode;2)配合 find 命令,删除特定的 inode 文件;3)其他有用的删除顽固文件的方法。
如何找出文件的 inode?

stat 或者ls -il。带有 -i 参数的 ls 命令,就是指显示文件的inode

找到 inode 后,如何删除这个文件?
find . -inum [inode 数字] -exec rm -i {} /;
1)下面我们完整实验一下,创建一个带特殊字符的文件:
$ cd /tmp
$ touch“/+Xy /+/8″
$ ls
2)尝试用 rm 命令删除
$ rm /+Xy /+/8
3)找出这个文件的 inode 数字
$ ls -il
342137 -rw-r–r– 1 tw tw 0 2008-11-20 08:57 /+Xy /+/8
4)342137 就是我们要找的 inode 数字。下面用 find 命令删除它
$ find . -inum 342137 -exec rm -i {} /;

比如,你的系统中有”2008/11/20″这个文件,用 rm 是删除不了的。Linux 不允许你建立这个文件,但是 Windows 下就可以。所以 find 配合 inode 的用处就在这里。

可以尝试用文件名加引号的方法删除文件。

比如“–help”文件,可以用 rm“–help” 删除

也可以用 unlink 删除文件。

unlink 命令调用 unlink 函数,可以删除一个特定文件。

用 mtools 删除 Windows 下创建的非法文件。

这种方法在 find 命令配合 inode 失效时,最为有用。专门对付 autorun.inf 病毒创建的文件夹。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2025-02-07发表,共计817字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中