Linux查看文件大小命令du详解
时间:2026-04-08 13:36:52 281浏览 收藏
想精准掌握Linux系统中文件和目录的磁盘占用情况?du命令远不止“查看大小”那么简单——它支持人性化显示(-h)、智能汇总(-s)、灵活排除(--exclude)、分层分析(--max-depth)、实时监控(watch)等强大功能,无论是快速定位巨型文件、排查存储瓶颈,还是动态跟踪日志增长或清理效果,都能游刃有余;从单个文件到多级目录,从静态统计到动态刷新,这篇详解带你全面解锁du的实用技巧,让磁盘空间管理变得清晰、高效、可控。

如果您需要了解Linux系统中某个文件或目录所占用的磁盘空间,可以使用du(disk usage)命令进行精确统计。以下是执行该任务的具体操作步骤:
一、查看单个文件的大小
du命令默认以块(通常为1024字节)为单位显示文件大小,配合-h参数可输出人类可读格式(如KB、MB、GB),便于直观判断文件体积。
1、在终端中输入:du -h filename,其中filename替换为实际文件路径。
2、若需仅显示总大小而不列出子项,添加-s参数:du -sh filename。
3、如文件权限受限,可加sudo前缀执行:sudo du -sh filename。
二、统计目录总占用空间
du对目录默认递归计算所有子目录及文件的磁盘用量,-s参数用于抑制逐级展开,仅返回顶层目录汇总值,避免冗长输出。
1、进入目标目录所在路径后,执行:du -sh /path/to/directory。
2、若当前已在目标目录内,可使用点号代替路径:du -sh .。
3、要排除特定子目录(如node_modules),可结合--exclude参数:du -sh --exclude="node_modules" .。
三、按大小排序显示子目录占用
通过du列出各子目录用量并配合sort命令,可快速识别占用空间最大的目录,有助于定位存储瓶颈。
1、执行命令:du -sh */ | sort -hr,其中*/匹配当前目录下所有子目录。
2、若需包含隐藏目录(以.开头),改用:du -sh .*/ */ | sort -hr | head -n 20,限制输出前20行。
3、为提高可读性,可添加--max-depth=1限制只统计一级子目录:du -sh --max-depth=1 /path/to/dir | sort -hr。
四、显示指定深度的目录结构与大小
--max-depth参数控制du递归遍历的层级深度,适用于需分层分析目录空间分布的场景,避免全量扫描带来的性能开销。
1、仅显示目标目录及其直接子目录大小:du -sh --max-depth=1 /path/to/dir。
2、显示两层深度(目录、子目录、子子目录):du -sh --max-depth=2 /path/to/dir。
3、若需排除符号链接指向的内容,添加-L参数:du -shL --max-depth=1 /path/to/dir。
五、实时监控目录空间变化
结合watch命令可周期性刷新du结果,适用于观察文件写入、日志增长或清理操作的效果。
1、每2秒刷新一次当前目录总大小:watch -n 2 'du -sh .'。
2、高亮显示变化部分,增强可读性:watch -n 5 'du -sh --max-depth=1 . | sort -hr'。
3、退出监控按Ctrl+C组合键。
终于介绍完啦!小伙伴们,这篇关于《Linux查看文件大小命令du详解》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
440 收藏
-
235 收藏
-
328 收藏
-
135 收藏
-
322 收藏
-
243 收藏
-
286 收藏
-
122 收藏
-
444 收藏
-
338 收藏
-
340 收藏
-
449 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习