Linux 的 du(磁盘使用情况)是一个标准的 Unix/Linux 命令,用于检查文件和目录的磁盘使用信息。
du 命令有许多参数选项,可用于以多种格式获取结果。du 命令还以递归方式显示文件和目录的大小。本文解释了有用的 du 命令及其示例,这些示例可以帮助您确定 Linux 中文件和目录的大小。本文提供的信息源自 du 命令的手册页 (man pages)。

1. 扫描目录结构
du /home/oneh # 显示原始磁盘块数(1块=4KB)

运维基本功:理解块设备底层逻辑
2. 人类可读格式(应急首选)
du -h /home/oneh # 自动转换KB/MB/GB
3. 秒看目录总大小
du -sh /home/oneh # -s汇总 -h人性化

黄金组合:快速定位问题目录
4. 文件级空间透视
du -ah /home/oneh # 显示每个文件大小详情
5. 按单位精准分析
du -mh /home/oneh # 强制MB单位显示
适用场景:存储配额精确计算
6. 生成统计报告
du -ch /home/oneh # 末尾显示总用量
7. 排除干扰文件
du -ah --exclude="*.log" /home/oneh
实战场景:跳过日志分析业务数据
8. 按时间追踪大文件
du -ha --time /home/oneh | grep '2025-07'
场景 | 神级命令 | ||
|---|---|---|---|
快速定位目录大小 | du -sh * | ||
找出修改过的超大文件 | du -ha --time * | sort -hr | |
排除临时文件分析 | du -h --exclude="*.tmp" | ||
仅统计前10大子目录 | du -h /path | sort -rh | head -10 |
技术冷知识:
du与df的区别:
du 统计文件实际占用(适合找大文件)df 报告文件系统总量(适合看磁盘分区) 两者结合使用,空间排查再无盲区!发现磁盘告警时,别急着删文件! 先用du -sh *锁定目标,再用--exclude过滤干扰项, 最后用--time揪出罪魁祸首——精准打击才是高手的作风。