查找data目录下面的大文件

在 Linux 系统中,你可以通过以下几个命令快速查找 /data 目录下占用空间较大的文件或目录:


方法 1:使用 du 命令(推荐)

du(Disk Usage)是专门用于分析磁盘占用的工具,支持按大小排序。

# 列出 /data 下所有子目录的大小(含隐藏目录),按从大到小排序
du -sh /data/* | sort -rh

​
# 更深入分析(包含子目录的子目录)
du -h --max-depth=1 /data | sort -rh

​
# 查找前10大目录或文件
du -ah /data | sort -rh | head -n 10

参数说明:

  • -s:统计总大小(不显示子目录细节)。

  • -h:以人类可读格式显示(如 KB、MB、GB)。

  • --max-depth=1:仅显示 1 级子目录。

  • sort -rh:按人类可读的数字逆序排序(从大到小)。

  • head -n 10:显示前10行结果。


方法 2:使用 find + ls

直接查找大文件(如大于 500MB 的文件):

# 查找大于 500MB 的文件并显示详细信息
find /data -type f -size +500M -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

​
# 仅列出文件名(速度更快)
find /data -type f -size +500M -printf "%s\t%p\n" | sort -nr | head -n 20

参数说明:

  • -type f:仅查找文件(排除目录)。

  • -size +500M:大小超过 500MB(支持单位:GMk)。

  • -exec ls -lh {} \;:对找到的文件执行 ls -lh 显示详细信息。

  • -printf "%s\t%p\n":直接打印文件大小(字节)和路径。


方法 3:使用 ncdu 工具(交互式)

安装 ncdu(NCurses Disk Usage),以交互界面直观分析:

# 安装 ncdu(Debian/Ubuntu)
sudo apt install ncdu

​
# 扫描 /data 目录
ncdu /data

操作说明:

  • 按方向键浏览目录。

  • d 删除文件(谨慎使用)。

  • q 退出。


方法 4:使用 ls 按大小排序

快速列出当前目录下大文件(不递归子目录):

# 按文件大小逆序排列(仅当前目录)
ls -lhS /data

参数说明:

  • -l:长格式显示。

  • -h:人类可读大小。

  • -S:按文件大小排序(大到小)。


总结

  • 快速定位大目录 → 使用 du -sh * | sort -rh

  • 精确查找大文件 → 使用 find + size 过滤。

  • 交互式分析 → 使用 ncdu(适合复杂场景)。

如果有权限问题,可在命令前加 sudo 获取超级用户权限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沉默的八哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值