linux 查看文件 文件夹大小

在日常运维中,当遇到磁盘空间不足的问题时,可以使用`du`命令来查找占用空间最大的目录。`du`命令可以递归估算文件和目录的磁盘使用情况。通过添加`-s`选项获取总结信息,`-h`选项以人类可读的单位显示大小。例如,`du -sh *`或`du -h --max-depth=1`可以查看根目录下各子目录的大小。`ll`命令虽然也能显示大小,但它不包括子目录。文件夹的大小通常为4K,这是由于文件元数据的存储。对于文件,`ll`和`du`的显示可能不同,因为`ll`显示的是文件大小,而`du`显示的是磁盘分配的大小。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

日常运维时,经常遇到磁盘存储空间不足的告警,我们就需要找到哪个目录占用的空间最大。通常先看一下根目录下各个子目录的大小,找到占用最大的文件夹,然后再一级级的找下去。这就要用到du(disk usage)命令

du - estimate file space usage
Summarize disk usage of each FILE, recursively for directories

从上述解释,du用于估算每个文件占用的空间,如果是文件夹,那么会递归估算。

  • -s(summarize),总结性信息
  • -h(human-readable),以人类易读的单位展示,比如大文件以G为单位,中文件用MB,小文件用KB

比如查看根目录下,一级子目录的大小

du -sh /*

或者先切换到根目录下,然后

du -sh ./*

在这里插入图片描述
也可以使用du -h --max-depth=1
在这里插入图片描述

我们知道,ll -h也可以查看大小,但是它只查看本级文件夹大小,而不包含子文件。也许你已经发现,文件夹的大小,基本都是4K,这4k是存储文件元数据所占有的空间。

在这里插入图片描述

疑问

从上图可以看出,对大多数文件,注意指的是文件而不是文件夹,ll du展示的大小一样,但qr_code.png,在ll中占据772,在du中占用4K,这是因为ll默认展示的是文件大小,而不是占用磁盘的大小,使用-s选项,可以查看分配的大小。
在这里插入图片描述
从这图也可以看出,文件夹实际大小和分配大小都是4K,而小文件,大小与占用磁盘大小可能不一样。

总结

查看文件夹(包含子目录)的大小,使用du -sh path/* 或者du -h --max-depth=1 path

参考

using-ls-to-list-directories-and-their-total-sizes

how-get-size-of-file-directory-linux

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值