du(disk usage)命令是 Linux/Unix 系统中用于查看文件和目录磁盘使用情况的实用工具。它能够递归地计算指定目录下所有文件和子目录所占用的磁盘空间。
基本语法
du [选项] [文件或目录...]
常用选项
-
-h或--human-readable:以人类易读的格式显示(KB、MB、GB)du -h /home/user -
-s或--summarize:只显示总用量,不显示子目录详情du -sh /var/log -
-a或--all:显示所有文件的统计,包括普通文件du -ah /etc -
-c或--total:显示所有文件/目录的总和du -ch /usr/local/* -
--max-depth=N:设置递归深度du -h --max-depth=1 /usr -
--exclude=PATTERN:排除匹配模式的文件或目录du -h --exclude='*.log' /var
实际应用示例
-
查看当前目录磁盘使用情况:
du -sh . -
查看指定目录下各子目录大小(只显示一级):
du -h --max-depth=1 /usr -
找出系统中占用空间最大的目录:
du -h / | sort -rh | head -10 -
监控日志目录大小(排除压缩文件):
du -sh --exclude='*.gz' /var/log -
计算多个目录总大小:
du -csh /home /usr /var
输出解释
du 命令的输出通常包含两列:
- 第一列:磁盘使用量(默认以 KB 为单位,使用
-h选项后会转换为易读格式) - 第二列:文件或目录路径