我需要代码来清空回收箱而不会形成我尝试了简单的del $Recycle.Bin
但它说即使提升也拒绝访问,任何人都知道我可以使用的代码。
这在没有任何确认的情况下清空了我的垃圾箱。
@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}"
上面的答案对于cmd批处理文件是可以的,但对于新的Powershell,有更好的方法
只需使用 cmdlet
Clear-RecycleBin
或者,您可以使用 -Force 或 -Confirm:$false 参数,这样它就不会要求确认
有关更多信息,请打开电源外壳并键入
Get-Help Clear-RecycleBin
我刚刚找到了这个。
erase /s/q/f "C:$RECYCLE.BIN*">nul
保证删除所选驱动器回收站中的所有内容,同时保持文件夹本身不变:
C:$Recycle Bin>rd . /q /s
- 更改为所需驱动器
- 切换到
$Recycle Bin
文件夹 - 运行命令
rd . /q /s
[remove-dir (currentdir)/quiet/subdir]
您将收到一条错误消息,指出当前目录仍在使用中(因为这是您的当前位置)并且无法删除。这是预期行为,因为我希望保留$Recycle Bin
文件夹。
我认为/s
参数必须出现在/q
之前:
rd /s /q C:$Recycle.Bin
应该是运行和清空批处理文件中回收站的命令,对吧?