# du 命令

du 命令用于估计文件和目录的磁盘空间使用量。它可以递归统计目录的大小,帮助用户了解磁盘空间的使用情况。

# 语法

du [选项] [文件...]

# 常用选项

  • -h: 以人类可读的格式显示大小
  • -s: 只显示总计大小
  • -a: 显示所有文件的大小,而不只是目录
  • -c: 显示总计大小
  • --max-depth=N: 显示目录层级的最大深度
  • -x: 不跨越文件系统边界

# 使用示例

# 基本用法

# 显示当前目录下所有文件和目录的大小
du -h

# 只显示当前目录的总大小
du -sh

# 显示指定目录的大小
du -sh /path/to/directory

# 高级用法

# 显示目录中最大的几个文件/目录
du -h | sort -hr | head -n 5

# 限制目录深度为1
du -h --max-depth=1

# 显示所有文件和总计
du -ach

# 排序和过滤

# 找出大于100MB的目录
du -h | grep '^[0-9.]*G'

# 按大小排序显示前10个最大的目录
du -h | sort -rh | head -n 10

# 实际应用场景

  1. 磁盘空间分析:找出占用空间最大的文件和目录
  2. 系统清理:识别可以清理的大文件
  3. 容量规划:评估目录的存储需求
  4. 备份管理:估算备份所需空间

# 注意事项

  1. 对于大型目录,统计可能需要较长时间
  2. 统计结果可能因文件系统类型而不准确
  3. 使用-x选项可以避免统计其他文件系统的内容
  4. 权限不足可能导致某些目录无法统计