当你的 C 盘或其他磁盘空间告急时,图形界面(资源管理器)往往显得力不从心:搜索慢、删除大文件时进度条卡死、或者因为文件名过长而无法删除。这时候,CMD命令行 或 PowerShell) 就是你的救星。它不仅速度更快,还能精准定位并强制删除那些顽固的大文件。
第一步:以管理员身份打开命令行
为了拥有删除所有文件(包括受保护文件)的权限,我们需要以管理员身份运行。按下 Win 键,输入 cmd 或 powershell。在搜索结果中,右键点击“命令提示符”或“Windows PowerShell”。选择 “以管理员身份运行”。
第二步:查找大文件(定位目标)
在删除之前,我们首先需要知道哪些文件占用了空间。我们可以使用命令行工具来快速扫描。
方法 A:使用 PowerShell(推荐,功能强大)
PowerShell 可以按文件大小排序,非常直观。假设我们要扫描 D 盘:
在 PowerShell 中输入以下命令(查找大于 500MB 的文件):
Get-ChildItem -Path D:\ -Recurse -ErrorAction SilentlyContinue | Where-Object { $_.Length -gt 500MB } | Sort-Object Length -Descending | Select-Object FullName, @{Name="Size(MB)";Expression={[math]::Round($_.Length/1MB, 2)}}
解释:
Get-ChildItem -Recurse: 递归扫描所有子文件夹。
-ErrorAction SilentlyContinue: 忽略没有权限访问的文件夹报错,让扫描继续。
Where-Object { $_.Length -gt 500MB }: 筛选出大于 500MB 的文件(你可以改成 1GB 或 100MB)。
Sort-Object ... -Descending: 按大小从大到小排序。
Select-Object ...: 只显示文件路径和大小(单位 MB)。
仔细查看列出的文件路径,确认哪些是可以删除的。
方法 B:使用 CMD 配合 dir(简单粗暴)
CMD 原生不支持按大小筛选,但我们可以结合 dir 和 findstr 来辅助,或者手动进入疑似占用空间的文件夹查看。
切换到目标盘符,例如 D 盘:
列出所有文件并按大小排序(注意:CMD 的排序功能有限,通常需配合人工判断):
dir /s /o:-d
/s: 包含子目录。
/o:-d: 按日期倒序(通常新下载的大文件在最近)。
注:CMD 很难直接按文件大小排序,对于精准找大文件,强烈建议使用上面的 PowerShell 方法。
第三步:执行删除命令
找到目标文件后,我们可以使用删除命令。
删除单个指定的大文件
如果你已经知道了文件的完整路径(例如从第二步复制过来的):
使用 PowerShell:
Remove-Item "D:\Downloads\huge_video_file.mp4"
使用 CMD:
del "D:\Downloads\huge_video_file.mp4"
注意:如果路径中包含空格,必须用双引号 "" 将路径括起来。
批量删除特定类型的大文件
假设你想删除 D 盘 Temp 文件夹下所有大于 1GB 的 .log 日志文件。
PowerShell 高级删除脚本:
Get-ChildItem -Path "D:\Temp" -Recurse -Filter *.log -ErrorAction SilentlyContinue | Where-Object { $_.Length -gt 1GB } | Remove-Item -Force
-Force: 强制删除只读文件。
再次提醒:在执行带有通配符(*)的删除命令前,建议先去掉 | Remove-Item -Force 部分,运行一次看看列出的文件是否符合预期,确认无误后再加上删除部分执行。
删除整个文件夹(如果该文件夹全是大文件)
如果某个文件夹(如 D:\Old_Games)里全是你要删的大文件,直接删文件夹更快。
CMD:rmdir /s /q "D:\Old_Games"
/s: 删除目录树(包含里面所有文件)。
/q: 安静模式(Quiet),不询问确认,直接删除。
PowerShell:
Remove-Item "D:\Old_Games" -Recurse -Force
-Recurse: 递归删除。
-Force: 强制删除。
有时候你会遇到“文件正在被另一程序使用”或“路径太长”的错误。
如果提示文件被占用,你需要先结束占用它的进程。
查找占用进程的 PID(假设文件是 data.db):
Get-Process | Where-Object { $_.Modules.FileName -like "*data.db*" }
(注:此命令可能需要管理员权限且较复杂,更简单的方法是重启电脑进入安全模式,或使用任务管理器关闭相关软件)
或者直接使用 handle 工具(需下载 Sysinternals 套件),但在纯命令行环境下,重启电脑后立刻执行删除命令通常是最快的方法。
通过掌握这些命令行技巧,你再也不用面对资源管理器的卡顿而发愁,轻松掌控 Windows 10 的存储空间!