du(Disk Usage)命令是Linux中的一个常用工具,用于估算文件和目录的磁盘使用情况。以下是详细的讲解,包括常用选项和示例:
基本语法
du [选项] [文件或目录]
常用选项
-a:显示所有文件和目录的磁盘使用情况,而不仅仅是目录。
-h:以人类可读的格式显示大小(例如:K、M、G)。
-s:仅显示每个参数的总大小,而不显示子目录的大小。
-c:在输出的最后添加一个总计行。
-d N:显示目录深度为N级的使用情况。
--max-depth=N:与-d N功能相同。
-x:跳过在其他文件系统上的目录。
--exclude=PATTERN:排除匹配模式的文件和目录。
示例
显示当前目录下每个文件和目录的大小
du
显示当前目录下每个文件和目录的大小(以人类可读的格式)
du -h
显示当前目录下所有文件和子目录的大小(包括文件)
du -a
显示当前目录下所有文件和子目录的大小(以人类可读的格式)
du -ah
显示当前目录的总大小
du -s
显示当前目录的总大小(以人类可读的格式)
du -sh
显示当前目录和子目录的大小,限制深度为1级
du -d 1
显示多个目录和文件的总大小
du -c dir1 dir2 file1
排除特定文件或目录
du --exclude='*.log'
实例应用
查看根目录的磁盘使用情况
du -sh /*
这个命令会显示根目录下每个子目录的总大小,以人类可读的格式。
查看特定目录的使用情况,限制深度为2级
du -h --max-depth=2 /path/to/directory
这个命令会显示指定目录下的所有文件和子目录的大小,限制深度为2级。
排除临时文件目录的磁盘使用情况
du -sh --exclude='/tmp/*' /
这个命令会显示根目录的总大小,但不包括/tmp目录。
注意事项
du命令的执行速度可能会因为目录内容的多少和文件系统的类型而有所不同。
使用-h选项可以更直观地理解磁盘使用情况,特别是对大文件和目录的分析。