Linux 的 du 命令

du(disk usage)命令是 Linux/Unix 系统中用于查看文件和目录磁盘使用情况的实用工具。它能够递归地计算指定目录下所有文件和子目录所占用的磁盘空间。

基本语法

复制代码
du [选项] [文件或目录...]

常用选项

  1. -h--human-readable:以人类易读的格式显示(KB、MB、GB)

    复制代码
    du -h /home/user
  2. -s--summarize:只显示总用量,不显示子目录详情

    复制代码
    du -sh /var/log
  3. -a--all:显示所有文件的统计,包括普通文件

    复制代码
    du -ah /etc
  4. -c--total:显示所有文件/目录的总和

    复制代码
    du -ch /usr/local/*
  5. --max-depth=N:设置递归深度

    复制代码
    du -h --max-depth=1 /usr
  6. --exclude=PATTERN:排除匹配模式的文件或目录

    复制代码
    du -h --exclude='*.log' /var

实际应用示例

  1. 查看当前目录磁盘使用情况:

    复制代码
    du -sh .
  2. 查看指定目录下各子目录大小(只显示一级):

    复制代码
    du -h --max-depth=1 /usr
  3. 找出系统中占用空间最大的目录:

    复制代码
    du -h / | sort -rh | head -10
  4. 监控日志目录大小(排除压缩文件):

    复制代码
    du -sh --exclude='*.gz' /var/log
  5. 计算多个目录总大小:

    复制代码
    du -csh /home /usr /var

输出解释

du 命令的输出通常包含两列:

  • 第一列:磁盘使用量(默认以 KB 为单位,使用 -h 选项后会转换为易读格式)
  • 第二列:文件或目录路径

注意事项

  1. du 统计的是磁盘使用量,可能与文件实际大小不同(因为磁盘分配的最小单位是块)

  2. 对于大型目录,du 可能需要较长时间计算

  3. 默认情况下,du 不会统计符号链接指向的文件(除非使用 -L 选项)

  4. 某些特殊文件(如设备文件)可能不会被正确统计

相关推荐
Elastic 中国社区官方博客4 小时前
OpenTelemetry Java 扩展:无需分叉 agent 即可自定义追踪
java·大数据·运维·开发语言·数据库·人工智能·elasticsearch
aaaBsBsBsB4 小时前
k8s pod管理
运维·docker·容器
weixin_511255214 小时前
NGINX常用配置
linux·服务器·nginx
志栋智能5 小时前
迈向真正的超自动化巡检
运维·自动化
荣合技术服务5 小时前
电脑多,单个加域麻烦?下载此AD域加域助手,批量加域速度快
运维·服务器·ad域控
昌原的儿子LEO5 小时前
进程和线程(2)
linux·服务器·网络
小王C语言5 小时前
云服务器重置后,vscode无法远程连接
运维·服务器
Doep_key6 小时前
Kubenetes控制器
运维·docker·容器
RoboWizard6 小时前
金士顿高性能存储 赋能工控行业多场景深度落地
运维·服务器
会飞的土拨鼠呀6 小时前
Linux 真实内存使用率的核心计算标准
linux·运维·服务器