Сегодня утром мне нужно было удалить кучу сообщений из очереди почты, и я подумал, что было бы очень хорошо иметь возможность запрашивать очереди с помощью Powershell. Есть какие-нибудь скрипты?
Примечание: это для SBS 2003, поэтому нет Exchange 2007, но поскольку обновление уже близко, ответ только на 2007 год будет прекрасным ...
Get-ExchangeServer | ?{$_.IsHubTransportServer -eq $true} | Get-Queue | get-message | Remove-Message -withNDR $false
Я не знаю сценария PowerShell, который сделает это для Exchange 2003 (он может быть, просто не могу его найти), с Exchange 2007 это очень просто.
Есть сценарий Вот который очистит для вас всю очередь, используя vbscript. Вы хотите сделать это или удалить определенные электронные письма?
Для Exchange 2003 я бы использовал Aqadmcli.exe от Microsoft PSS, следующая ссылка дает хороший обзор того, как использовать его для массовой очистки очередей.