如何批量清空回收站

7

我需要一个没有确认就可以清空回收站的代码,我尝试过简单的del $Recycle.Bin,但它会显示访问被拒绝,即使提高了权限也不行,有人知道我可以使用的代码吗?


这个命令可以帮我完成:powershell.exe Clear-RecycleBin -force - Sakib Arifin
5个回答

2
以上回答适用于cmd批处理文件,但对于新的PowerShell来说有一种更好的方式 只需使用以下命令:
Clear-RecycleBin
可选择使用-Force或-Confirm:$false参数,以免询问确认。
要获取更多信息,请打开PowerShell并键入以下命令
Get-Help Clear-RecycleBin

2
这个操作在没有任何确认的情况下清空了我的回收站。
@ECHO OFF
start /b /wait powershell.exe -command "$Shell = New-Object -ComObject Shell.Application;$RecycleBin = $Shell.Namespace(0xA);$RecycleBin.Items() | foreach{Remove-Item $_.Path -Recurse -Confirm:$false}"

但如果失败了,可能是权限问题。您是要删除自己的回收站还是其他用户拥有的回收站? - Knuckle-Dragger
所有的账户都包括在内。 - 09stephenb
我已尝试过,它显示$Shell不是有效的程序或命令。 - 09stephenb
是的,它一个接一个地循环遍历它们。 - Knuckle-Dragger
你能在获取所有权后删除它吗? - Knuckle-Dragger
显示剩余4条评论

1

我刚刚发现了这个。

erase /s/q/f "C:\$RECYCLE.BIN\*">nul

1
保证删除所选驱动器中回收站内的所有内容,同时保留文件夹本身,不会被删除:
C:\$Recycle Bin\>rd . /q /s
  • 切换到所需的驱动器
  • 进入$Recycle Bin文件夹
  • 运行命令rd . /q /s[remove-dir (currentdir) /quiet /subdir]

您将会收到一个错误提示,因为当前目录仍在使用中(因为这是您当前的位置),无法删除。这是预期行为,因为我希望$Recycle Bin文件夹保留。


0

我以为 /s 参数必须在 /q 之前出现:
rd /s /q C:\$Recycle.Bin 应该是运行并清空回收站的批处理文件命令,对吗?


实际上,使用rd /s /qrd /q /s并没有任何区别。 - Stephan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接