有没有办法使用Powershell 2.0清空回收站。
我不想更新Powershell。
您可以通过com对象清除回收站。像这样:
$Shell= New-Object -ComObject Shell.Application
$Bin = $Shell.NameSpace(10)
foreach ($Item in @($Bin.Items())){Remove-item $Item.Path -Force}
你也可以直接调用SHEmptyRecycleBin Win32函数:
$definition = @'
[DllImport("Shell32.dll", CharSet = CharSet.Unicode)]
public static extern uint SHEmptyRecycleBin(IntPtr hwnd, string pszRootPath, uint dwFlags);
'@
$winApi = Add-Type -MemberDefinition $definition -Name WinAPI -Namespace Extern -PassThru
$winApi::SHEmptyRecycleBin(0, $null, 7)
所有回收箱都被删除,没有显示确认信息,没有进度条,没有声音。