Linux du 命令使用整理

在 Linux 系统中,du 命令用于查看文件或目录占用的磁盘空间大小。它在排查磁盘占用、定位大文件和清理无用数据时非常实用。

1. 基本概念

du 的常见参数包括:

  • -s:只显示总大小
  • -h:以人类可读的格式显示(如 KMG
  • -a:显示所有文件和目录的大小
  • -d:指定递归深度
  • -c:显示总计

2. 查询当前目录的总大小

1
du -sh

该命令可以快速查看当前目录整体占用的磁盘空间。

3. 查询指定目录的总大小

1
du -sh /path/to/folder

如果你想查看某个目录的空间使用情况,可以直接替换为目标路径。

4. 查询当前目录下各子目录的大小

1
du -sh *

这个命令会列出当前目录中的每个子目录及其占用空间,便于快速定位占用较大的目录。

5. 显示详细信息

1
du -ah

-a 参数会显示目录中的每个文件和子目录的大小,因此适合做详细检查。

6. 按大小排序查看目录占用情况

1
du -sh /path/to/folder/* 2>/dev/null | sort -hr

该命令会:

  • 统计每个目录的大小
  • 按大小倒序排列
  • 更容易找到占用磁盘最大的目录

sort -hr 中:

  • -h:按人类可读单位排序
  • -r:倒序排列

7. 查看指定深度的目录占用情况

1
du -sh --max-depth=2 /path/to/folder

如果目录层级较深,可以通过 --max-depth 限制递归深度,避免输出过多内容。

8. 统计总量

1
du -shc /path/to/folder/*

-c 会在最后额外显示一个总计值,适合汇总多个目录的占用情况。

9. 实用示例

查看当前目录中占用最大的一项

1
du -sh * 2>/dev/null | sort -hr

查看某个目录下所有文件大小

1
du -ah /path/to/folder | sort -hr

只查看两层目录结构

1
du -sh --max-depth=2 /var/log

10. 注意事项

  • du 统计的是文件和目录实际占用的磁盘空间,不一定等于文件大小。
  • 如果目录中有大量小文件,du 的统计时间可能会略长。
  • 某些目录可能需要权限才能查看完整内容。

11. 总结

du 是 Linux 中非常常用的磁盘检查命令,适合:

  • 查看目录大小
  • 找出占用空间最大的目录
  • 排查磁盘空间不足问题
  • 辅助清理无用文件

如果你经常维护服务器,掌握 du 的常用参数会让磁盘问题排查更加高效。


Linux du 命令使用整理
https://jgq12138.github.io/2023/06/30/linux_du/
作者
JGQ12138
发布于
2023年6月30日
许可协议