先把“大文件”当成检查线索,不要当成删除结论
清理 Windows 空间前,先从一个明确文件夹导出文件路径、大小和修改时间,再逐项判断。文件占用大只说明值得检查,不能说明它是垃圾、重复项或可以安全删除。
例如项目成员发现下载文件夹占了几十 GB,其中可能同时有安装包、客户交付视频、云盘占位文件和正在被剪辑软件引用的素材。按大小排序能快速找到候选项,但应用依赖、保留期限、同步状态和备份情况都不在文件大小里。本文不会提供删除命令,也不会把任何阈值包装成自动清理规则。
本文在 2026-08-16 按 Microsoft Learn 核对 Windows PowerShell 5.1 与 PowerShell 7.5,目标系统为 Windows 11。Microsoft 的差异说明指出,Windows PowerShell 使用 powershell.exe,PowerShell 7 使用 pwsh.exe,两者可以并存;不要看到同样的蓝色终端就假定版本相同。本文命令只使用两个版本文档都列出的 Get-ChildItem -LiteralPath -File -Recurse 和通用对象管道,不承诺更早版本、非 Windows 平台或受组织策略限制的环境表现一致。
限定一个文件夹,再把结果写入新报告
第一轮只扫描你有权查看的命名文件夹,并给报告使用带时间的独立文件名。不要从 C:\ 根目录开始,也不要先用管理员权限压过访问限制;范围越大,错误、等待时间和误判越难复核。
先设置来源与报告位置。把示例路径换成自己的工作目录:$source = 'C:\Users\your-name\Downloads\project-review'。再建立不会覆盖旧报告的文件名:$report = Join-Path ([Environment]::GetFolderPath('Desktop')) ('large-files-{0:yyyyMMdd-HHmmss}.csv' -f (Get-Date))。
确认 $source 拼写正确后运行:Get-ChildItem -LiteralPath $source -File -Recurse | Where-Object { $_.Length -ge 100MB } | Sort-Object Length -Descending | Select-Object FullName, @{Name='SizeMB';Expression={[math]::Round($_.Length / 1MB, 1)}}, LastWriteTime | Export-Csv -LiteralPath $report -NoTypeInformation -Encoding UTF8。
这条管道会读取文件系统对象并新建 CSV 报告,不会改名、移动、打开或删除被列出的文件。-LiteralPath 会按输入原样解释目录,避免把方括号等字符当通配符;-File 排除文件夹;-Recurse 包含子文件夹。Export-Csv 把选出的对象属性保存成行。命令保留 -NoTypeInformation,是为了兼容 Windows PowerShell 5.1;Microsoft 文档说明从 PowerShell 6 开始该参数不再是必需项。
如果终端显示拒绝访问、路径不存在或文件正在变化,不要只看最后生成了 CSV 就认定扫描完整。记录错误位置,缩小到你确实拥有权限的文件夹后重新生成;不要为了得到“干净输出”静默忽略所有错误。
用 CSV 预览核对范围,而不是编辑文件
报告生成后,先打开CSV / Excel 在线预览核对列名、路径和行数。这个页面只预览所选报告,不会扫描 Windows 文件夹,更不会删除报告里提到的文件。
当前组件会在浏览器中读取 CSV、TSV、XLSX 或 XLS,必要时从 jsDelivr 加载 SheetJS 解析器;代码没有把所选文件发送到 ToolboxHub 服务器的上传步骤。它可以搜索单元格、显示匹配行数和列数,并把解析后的当前工作表另存为 data.csv。这些功能都不会修改原报告或源文件。
预览还有明确限制:表格最多显示 500 条匹配数据。即使状态栏给出更多匹配行,也不能把屏幕上看见的前 500 行当成完整清单。浏览器内存、解析器加载失败、特殊 CSV 分隔符或接收程序的编码处理,也可能让结果与预期不同。先检查第一行表头,再抽查开头、中间和末尾的路径;若中文路径乱码或列错位,应回到报告生成步骤排查,而不是在预览结果里手工修补。
每个候选文件都要回到来源确认
决定是否处理某个文件前,要在文件资源管理器回到它的实际位置,确认用途、所有者和替代来源。CSV 中的 Length 是文件系统对象报告的逻辑长度,不等于删除后一定能回收相同空间;压缩、稀疏文件、去重、云端占位和同步状态都可能影响实际占用。
可以先给候选项加人工分类,而不是立刻动文件:仍在使用、已有独立备份、可从官方来源重新取得、需要询问所有者、暂时不能确认。若路径位于 OneDrive、其他同步目录、应用资料目录或团队共享位置,应先确认删除会不会同步到其他设备或影响协作者。清单本身看不出这些关系。
需要比较两次盘点时,可以把已排序、只含非敏感路径的文本副本贴到文字差异比对查看新增与减少的行。该工具只比较粘贴文本,不能读取文件属性、验证备份,也不能证明少掉的一行是安全删除还是扫描遗漏。
处理后重新盘点并核对真实结果
任何移动、归档或应用内清理都应由文件所有者在合适程序里完成,随后用同一来源路径和同一阈值生成新报告。比较前后报告时,先确认扫描时间、路径和错误信息一致,否则行数变化可能只是范围不同。
- 重新打开实际来源文件夹,确认关键项目仍能由原应用访问。
- 检查同步客户端是否完成处理且没有出现冲突或回收站警告。
- 保留第一次报告和备份记录,直到负责人确认结果。
- 在 Windows 设置或文件资源管理器查看真实可用空间,不用 CSV 大小总和替代磁盘结果。
- 若新报告意外少了整段目录,先检查访问错误和路径变更,不要把它当成成功释放空间。
这个流程的价值是把“磁盘快满了”拆成可复核的候选清单。PowerShell 负责枚举与导出,ToolboxHub 负责预览报告;两者都不会替你判断业务文件能否删除。
常见问题
这条 PowerShell 命令会删除或修改文件吗?
不会。它枚举指定目录、筛选大小并新建 CSV 报告,不包含删除、移动或重命名命令。不过报告写入位置仍要使用新文件名,避免覆盖上一轮记录。
为什么要同时说明 PowerShell 5.1 和 7.5?
Windows PowerShell 5.1 与 PowerShell 7 是不同运行时,后者使用 pwsh.exe。本文所用参数在两个版本的 Microsoft 文档中都存在,但其他脚本不能据此自动推断兼容。
100MB 是不是安全删除线?
不是。它只是示例筛选阈值,用来缩小人工检查范围。大型数据库、视频、虚拟机、备份和应用资源都可能是必要文件。
ToolboxHub 能直接编辑 CSV 或清理电脑吗?
不能。当前工具只解析并预览 CSV、TSV 与电子表格,可搜索和另存解析结果;它不会编辑原工作簿、扫描磁盘、删除文件或执行 PowerShell。
预览只显示 500 行,怎样确认报告完整?
先看状态栏计数,再用更具体的搜索分段抽查,并在合适的电子表格程序中核对完整报告。任何访问错误、乱码或列错位都应回到生成步骤解决。