linux利用inode(节点)删除

linux中,文件查找不是通过文件名称来查找的。实际上是通过i节点来实现文件的查找定位的。我们可以形象的将i节点看做是一个指针fip。当文件存储到磁盘上去的时候,文件肯定会存放到一个磁盘位置上,可以这样想象,既然文件数据是存放在磁盘上的,如果我们知道这个文件数据的地址,当我们想要读写文件的时候,我们是不是直接使用这个地址去找到文件就可以了呢?

     是的,linux下,i节点其实就是可以这么认为,把i节点看作是一个指向磁盘上该文件存储区的地址。只不过这个地址我们一般是没办法直接使用的,而是通过文件名来间接使用的。事实上,i节点不仅包含了文件数据存储区的地址,还包含了很多信息,比如数据大小,等等文件信息。但是i节点是不保存文件名的。文件名是保存在一个目录项中。每一个目录项中都包含了文件名和i节点。

# 查看inode
[root@nfs nginx-1.22.0]# ls -i
  4462528 auto        134337974 contrib                  67338876 man                          202031542 --with-http_dav_module          202031543 --with-http_stub_status_module
201773394 CHANGES       4462529 html                     68635687 objs                         202031546 --with-http_flv_module          202031545 --with-http_sub_module
201773393 CHANGES.ru  202030885 libmcrypt-2.5.8.tar.gz  201773392 README                       202031550 --with-http_gzip_static_module  202031548 --with-pcre
 67338875 conf        201773391 LICENSE                 201604954 src                          202031547 --with-http_mp4_module
201773390 configure   202031551 Makefile                202031544 --with-http_addition_module  202031549 --with-http_ssl_module

# 删除指定的inode节点
[root@nfs nginx-1.22.0]# find -inum 202031544 -delete


# 批量删除inode
[root@nfs nginx-1.22.0]# ll -i | grep with | awk '{print $1}'
202031542
202031546
202031550
202031547
202031549
202031543
202031545
202031548
[root@nfs nginx-1.22.0]# for i in `ll -i | grep with | awk '{print $1}'` ; do find -inum $i -delete ; done

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值