du 统计文件或目录占用的磁盘空间。
du 递归计算目录树中所有文件的总大小。它可以帮助识别占用磁盘空间最多的文件和目录。
示例 1:查看当前目录占用
du -sh .
256M .
示例 2:查看目录中每个子目录的大小
du -sh */
128K Documents/
256M Downloads/
512K Pictures/
示例 3:排序显示最大的目录
du -h --max-depth=1 /home/alice | sort -rh | head -10
示例 4:显示每个文件的大小
du -ah --max-depth=1
示例 5:只统计文件(不包含目录)
du -ch *.log
示例 6:查看指定目录的深度统计
du -h --max-depth=2 /var/log
| 参数 | 长参数 | 说明 |
|---|---|---|
-h |
--human-readable |
人类可读格式 |
-s |
--summarize |
只显示总计 |
-a |
--all |
显示所有文件(不仅目录) |
-c |
--total |
显示总计 |
-k |
以 KB 为单位 | |
-m |
以 MB 为单位 | |
-b |
--bytes |
以字节为单位 |
--max-depth=N |
限制最大深度 | |
-x |
--one-file-system |
不跨文件系统 |
-L |
--dereference |
跟随符号链接 |
-P |
--no-dereference |
不跟随符号链接(默认) |
--exclude=PATTERN |
排除匹配模式的文件 | |
--time |
显示文件/目录最后修改时间 | |
-D |
--dereference-args |
跟随命令行中的符号链接参数 |