回收站在磁盘上的真实面目
每个驱动器都有一个名为 $Recycle.Bin 的隐藏系统文件夹,Windows 在其中为每个用户账户维护一个以安全标识符(SID)命名的子文件夹。在资源管理器里“删除”文件时,它只是被移入该文件夹——改了名,但完好无损——因此回收站才能按用户分别清空和还原。也正因为如此,C:\$Recycle.Bin 里可能悄悄躺着好几个 GB,而资源管理器的文件夹视图永远看不到它们。
对命令行而言,实际结论是:清空回收站就是删除这些隐藏文件夹的内容。Windows 为这项工作提供了一个专门的 cmdlet,另有一条从 MS-DOS 时代沿用下来的粗糙 rd 路线。两者都是永久删除——这样删掉的东西不会再第二次进入回收站。
两条能清空回收站的命令
PowerShell 是正路。Clear-RecycleBin cmdlet 随 Windows 10 和 11 内置,用于清空当前用户的回收站:不带参数运行会先弹确认提示,然后清除所有驱动器,加 -Force 可跳过确认。cmd.exe 的路线更老也更糙——rd /s /q 直接删除 $Recycle.Bin 文件夹本身,Windows 随后会重新创建一个空的。因为它动的是受保护的系统文件夹,必须以管理员权限运行,而且会影响该驱动器上所有用户的回收站,而不只是你自己的。
- Clear-RecycleBin — 清空当前用户在所有驱动器上的回收站(会先询问)
- Clear-RecycleBin -Force — 同样的操作但没有确认提示,是脚本中的标准写法
- Clear-RecycleBin -DriveLetter C — 只清理单个驱动器
- rd /s /q C:\$Recycle.Bin — 管理员权限的 cmd.exe:清掉 C 盘上所有用户的回收站
- rd /s /q D:\$Recycle.Bin — 每个驱动器号都要重复一次;可移动驱动器也有自己的回收站
安排自动清空
命令行的真正价值在于自动化。在任务计划程序里创建一个任务,运行 powershell.exe 并带上参数 -NoProfile -Command "Clear-RecycleBin -Force"——每周一次是合理默认,这样回收站最多只会积累一周的删除量。图形界面的替代方案是存储感知:设置 → 系统 → 存储 → 存储感知,可以把“如果文件已在回收站中超过以下时长,就将其删除”的规则设为 1、14 或 30 天,Windows 11 上还可以设为 60 天。
定时清空是把双刃剑:凡是把回收站当保险网——上周的文件“以防万一”还想找回来——的人,要么把间隔放宽,要么干脆放弃自动化。宽敞的磁盘上放个大回收站毫无问题,只有空间吃紧时才需要在意。Kleaner PRO 在计划清理中走中间路线:回收站是带独立开关的单独类别,每周一次的清理能碰什么、不能碰什么,由你自己决定。
常见问题与解答
cmd 里有清空回收站的命令吗?
cmd.exe 没有专门的命令。可行的办法是 PowerShell 的 Clear-RecycleBin,或者 rd /s /q C:\$Recycle.Bin——它会删除隐藏的回收站文件夹(需要管理员权限)。
rd /s /q C:\$Recycle.Bin 会永久删除文件吗?
会。它会清掉该驱动器上所有用户的回收站内容,没有确认也无法撤销——把它当成从桌面清空回收站一样对待,只是少了那个对话框。
能一次性清空所有用户的回收站吗?
能,按驱动器来:以管理员权限运行 rd /s /q X:\$Recycle.Bin 会清空 X 盘上每个用户的回收站,因为单个 $Recycle.Bin 文件夹装着所有账户的子文件夹。相比之下,Clear-RecycleBin 只作用于当前用户。
继续阅读
联系我们: [email protected]