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
按人类可读数值降序排列。
使用 ncdu
工具(交互式分析)
ncdu
(NCurses Disk Usage)提供可视化界面,适合深度分析:
安装与使用:
sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # CentOS/RHEL ncdu /path/to/directory
优势:
- 交互式界面:方向键导航,
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 |
快速查看单个文件夹大小 | 无需安装,所有Linux系统默认支持 |
ncdu |
分析大目录或查找大文件 | 交互式操作,直观易用 |
图形化工具 | 桌面环境用户 | 可视化展示,鼠标操作便捷 |
最佳实践建议
- 定期检查:用
du -sh ~/*
扫描用户主目录,及时发现大文件。 - 清理缓存:结合
find
删除旧文件(如find /tmp -type f -mtime +7 -delete
)。 - 关键目录监控:将
du -sh /var/log
加入定时任务,防止日志溢出。
引用说明基于Linux核心工具(GNU coreutils)及社区文档,参考
man du
官方手册、ncdu项目文档及GNOME/KDE官方指南,所有命令均在Ubuntu 22.04/CentOS 7+ 测试验证,确保可靠性。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/33648.html