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. 某些特殊文件(如设备文件)可能不会被正确统计

相关推荐
AI_Lab011 小时前
宝塔用了两年,有没有必要换成轻量方案?
linux·运维·服务器
众壹新能源科技1 小时前
逆变器直流开关柜温度监测与预防:红外巡检发现3个120度热点
运维·人工智能·自动化
by209991 小时前
Linux GDB 调试与 CGDB 使用
linux·运维·服务器·经验分享
小羊没烦恼!1 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
小Ti客栈2 小时前
Netty 零拷贝原理与实战
运维·服务器·网络
ai_coder_ai2 小时前
AIOps 智能运维架构设计及其应用
运维
静以修身zzz2 小时前
计算云服务
运维·网络·云计算
星恒随风2 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip
万联WANFLOW2 小时前
异地组网速度忽快忽慢到底怎么回事?直连与中继的判断方法和处理步骤
运维·网络·网络协议·p2p
SDWAN_Cheap2 小时前
物理服务器跟云服务器有什么区别,使用于什么场景
运维·服务器