Linux怎么查文件夹大小?
- Linux
- 2025-06-21
- 7
使用 du -sh 文件夹路径命令查看文件夹总大小( -s汇总 -h人性化单位)。 ,**注意**: ,1. 普通用户需对目录有读取权限 ,2. 查看系统目录可能需要 sudo提权 ,3. ls命令仅显示目录本身大小(通常4KB),不包含内容
使用 du 命令(最推荐)
du(disk usage)是Linux内置工具,专用于分析磁盘使用情况。
基础命令:
du -sh /path/to/directory
- -s:显示目录总大小(不显示子目录详情)。
- -h:以人类可读格式输出(如KB、MB、GB)。
示例:
du -sh /home/user/Documents # 输出:2.4G /home/user/Documents
进阶用法:
- 查看目录内所有子文件夹大小: du -h --max-depth=1 /path/to/directory
--max-depth=1 限制只显示一级子目录大小。
- 按大小排序(配合 sort): du -h --max-depth=1 /path | sort -hr
sort -hr 按人类可读数值降序排列。

- 交互式界面:方向键导航,Enter 进入子目录。
- 实时排序:按大小自动排序文件夹。
- 删除文件:直接选中文件按 d 删除(需谨慎)。
- 文件管理器:
- GNOME(Nautilus):右键点击文件夹 → “属性” → 查看“大小”。
- KDE(Dolphin):右键 → “属性” → “大小”标签页。
- 磁盘使用分析器:
安装 baobab(GNOME)或 kdirstat(KDE),扫描目录生成可视化图表: sudo apt install baobab # 安装后运行 baobab
- 权限问题:
若目录受限,需用 sudo 提权(如 sudo du -sh /root)。
- ls 命令无效:
ls -l 显示的是目录元数据大小(通常4KB),而非实际内容大小。
- 符号链接处理:
du 默认统计链接目标大小,添加 -L 选项追踪符号链接(如 du -Lsh)。
- 排除特定文件:
使用 --exclude 过滤(如 du -sh --exclude="*.tmp" /path)。
- 定期检查:用 du -sh ~/* 扫描用户主目录,及时发现大文件。
- 清理缓存:结合 find 删除旧文件(如 find /tmp -type f -mtime +7 -delete)。
- 关键目录监控:将 du -sh /var/log 加入定时任务,防止日志溢出。
使用 ncdu 工具(交互式分析)
ncdu(NCurses Disk Usage)提供可视化界面,适合深度分析:
安装与使用:
sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # CentOS/RHEL ncdu /path/to/directory
优势:
图形化工具(适合桌面用户)
常见问题与注意事项
方法对比
| 方法 | 适用场景 | 优势 |
|---|---|---|
| du -sh | 快速查看单个文件夹大小 | 无需安装,所有Linux系统默认支持 |
| ncdu | 分析大目录或查找大文件 | 交互式操作,直观易用 |
| 图形化工具 | 桌面环境用户 | 可视化展示,鼠标操作便捷 |
最佳实践建议
引用说明基于Linux核心工具(GNU coreutils)及社区文档,参考 man du 官方手册、ncdu项目文档及GNOME/KDE官方指南,所有命令均在Ubuntu 22.04/CentOS 7+ 测试验证,确保可靠性。
