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