批量删除Exchange 2010 邮件队列

某种原因(比如密码被猜出来被人用来中继垃圾邮件),在Exchange 2010的队列查看器中发现有大量垃圾邮件队列。使用管理器的方法只能一个目标域来删除。这里你可能需要快速删除邮件。可以参考以下的办法:

 

  1. 1.       如果发件人是特定的地址可以在EMS下使用以下命令:

Remove-Message -Server servername -Filter {FromAddress -eq ‘[email protected]’} -withNDR $false

PS:Servername [email protected]请替换成需要的信息

  1. 2.       如果需要删除特地的一个邮件主题的邮件,可以在EMS下使用以下命令:

Get-Message -Queue "server\queue" -ResultSize unlimited | where{$_.Subject -eq "5dmail.net"} | Remove-Message -WithNDR $False

PS:5dmail.net替换成你需要删除的邮件主题。

  1. 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

 

PSservername 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 Server

http://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


你可能感兴趣的:(批量删除,Exchange,邮件队列)