Windows 系统
方法 1:使用 dir
命令(仅显示当前目录)
dir /s /a
- 说明:
/s
递归子目录,/a
包含隐藏文件,结果中查看总大小
行(单位:字节)。 - 缺点:无法直接显示子文件夹独立大小。
方法 2:使用 PowerShell(推荐)
Get-ChildItem -Directory | ForEach-Object { $size = (Get-ChildItem $_.FullName -Recurse -File | Measure-Object -Property Length -Sum).Sum [PSCustomObject]@{ Folder = $_.Name Size_GB = [math]::Round($size / 1GB, 2) } }
- 效果:
列出当前目录下所有子文件夹的大小(单位:GB)。 - 自定义选项:
- 修改
Size_GB
为Size_MB
,分母改为1MB
可显示 MB 单位。 - 添加
| Sort-Object Size_GB -Descending
按大小排序。
- 修改
方法 3:使用第三方工具(如 du.exe
)
下载 Sysinternals Suite 中的 du.exe
:
du -v -nobanner "C:\目标文件夹"
- 参数说明:
-v
显示子目录大小,-nobanner
隐藏标题。
macOS / Linux 系统
方法 1:du
命令(基础用法)
du -sh /path/to/folder
- 参数解释:
-s
显示总大小,-h
自动转换单位(KB/MB/GB)。 - 示例输出:
8G /home/user/Documents
方法 2:查看目录内所有子文件夹大小
du -h -d 1 /path/to/folder | sort -hr
- 参数说明:
-d 1
仅显示一级子目录,sort -hr
按大小降序排序。 - 示例输出:
2G ./Videos 800M ./Downloads 500M ./Documents
方法 3:图形化工具(替代方案)
ncdu /path/to/folder
- 功能:交互式界面,支持排序、删除操作(需安装:
sudo apt install ncdu
)。
注意事项
- 权限问题:
- Linux/macOS 需用
sudo du
访问受限目录。 - Windows 需以管理员身份运行 PowerShell。
- Linux/macOS 需用
- 符号链接处理:
- 添加
-L
参数(如du -Lsh
)可跟踪符号链接的实际大小。
- 添加
- 排除特定文件(Linux/macOS):
du -sh --exclude="*.tmp" /path/to/folder
系统 | 推荐命令 | 特点 |
---|---|---|
Windows | PowerShell Get-ChildItem |
无需安装,支持自定义格式化输出 |
macOS/Linux | du -sh |
简单高效,参数灵活 |
通用 | ncdu |
交互式操作,适合深度分析 |
引用说明:
- Windows
dir
命令参考:Microsoft Docs- PowerShell 文档:Microsoft Docs
- Linux
du
手册页:man7.orgncdu
工具官网:dev.yorhel.nl/ncdu
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7350.html