钉子 发表于 2012-12-18 20:06:20

批量删除Exchange 2010 邮件队列

某种原因(比如密码被猜出来被人用来中继垃圾邮件),在Exchange 2010的队列查看器中发现有大量垃圾邮件队列。使用管理器的方法只能一个目标域来删除。这里你可能需要快速删除邮件。可以参考以下的办法: 1.       如果发件人是特定的地址可以在EMS下使用以下命令:Remove-Message -Server servername -Filter {FromAddress -eq ‘sender@abc.com’} -withNDR $false PS:Servername sender@abc.com]和sender@abc.com请替换成需要的信息 2.       如果需要删除特地的一个邮件主题的邮件,可以在EMS下使用以下命令: Get-Message -Queue "server\queue" -ResultSize unlimited | where{$_.Subject -eq "5dmail.net"} | Remove-Message -WithNDR $False PS:把5dmail.net替换成你需要删除的邮件主题。 3.       如果需要删除所有队列可以使用以下两种办法:方法一:可以在EMS下使用以下命令:
Get-ExchangeServer | ?{$_.IsHubTransportServer -eq $true} | Get-Queue | get-message -ResultSize unlimited | Remove-Message -withNDR $false 方法二:a.       停止exchange传输服务b.       找到队列数据库文件所在地,默认为c:\program files\microsoft\exhcange server\transportroles\data\queue,,将queue文件夹改名(如果queue-1),再新建一个queue文件夹c.       启动exchange传输服务,查看队列已经清空.更多信息:1.还可以针对来自某一个接收连接器来删除邮件队列,命令如下:
Remove-Message -Server servername -Filter {MessageSourceName -eq “SMTP:Defalut Connector”}-WithNDR $false PS:servername 和Defalut Connector替换成你需要的服务器名称和接收连接器名称 2.删除发件人为空的地命令:Remove-Message -Filter {FromAddress -eq "<>"} -WithNDR $false 3.参考信息:a. Remove-Message 命令参考http://technet.microsoft.com/en-us/library/aa996371.aspx b. 如何在Exchange 2010上防止对方冒名发送邮件http://blog.5dmail.net/user1/1/20111123161527.html c. Removing specific messages from your Exchange Serverhttp://blogs.technet.com/b/exchange/archive/2010/10/27/removing-specific-messages-from-your-exchange-server.aspx 转自:http://blog.5dmail.net/user1/1/20121218191429.html
页: [1]
查看完整版本: 批量删除Exchange 2010 邮件队列