1.查看邮件服务器上某个时间段内的所有邮件信息:

Get-MessageTrackingLog -ResultSize Unlimited -Start "3/6/2015 8:40AM" -End "3/6/2015 1:50PM"
Exchange邮件系统日志查看及管理
2.查看邮件服务器上某个时间段内由具体的某个人所发送的所有邮件详细信息:

Get-MessageTrackingLog -ResultSize Unlimited -Start "3/6/2015 8:40AM" -End "3/6/2015 1:50PM" –Sender majy@corp.com
Exchange邮件系统日志查看及管理
通过上述命令可以列出用户在此时间段的所有邮件来往信息。

如果我们在这条命令的后面加个 |fl 来进行详细查询的话,则会将上面列出来的所有邮件,每一封进行详细展示,如下:

Get-MessageTrackingLog -ResultSize Unlimited -Start "3/6/2015 8:40AM" -End "3/6/2015 1:50PM" –Sender majy@corp.com |fl
Exchange邮件系统日志查看及管理
Exchange邮件系统日志查看及管理

从上面我们可以看到,包括发送人从哪台客户端,客户端IP,发送给谁,甚至是直接发送还是抄送、密送都查的出来,非常详细。

3.查询发送失败的邮件

有些用户经常会反应发送邮件失败,想查询一下日志,看看到底是什么原因,那么我们运用一下命令:

Get-MessageTrackingLog -ResultSize Unlimited -Start "3/6/2015 8:40AM" -End "3/6/2015 2:50PM" -EventId "Fail" -Sender wenyy@corp.com

Exchange邮件系统日志查看及管理
4.删除指定的某一封邮件

有时候,用户误发错了一封邮件
希望我们能帮他们在服务器上直接删除掉,我们就可以使用下面的命令。

首先给自己的管理员权限加上一个“邮箱导入导出”的角色权限。

New-ManagementRoleAssignment -Role "mailbox import export" -User lyncadmin
Exchange邮件系统日志查看及管理
注:该命令运行完毕之后,必须重启EMS,不然后续操作会报错,找不到Search-mailbox的命令

然后使用下面命令删除用户邮箱中的“发送错误的邮件”这封测试邮件。
无论对方是否已经打开过这封邮件,都会被删除。“主题:'***'”

Search-Mailbox -Identity wenyy -searchquery "主题:'发送错误的邮件'" -deletecontent
Exchange邮件系统日志查看及管理

5.删除一封群发邮件

Get-Mailbox –ResultSize unlimited | Search-Mailbox -searchquery "主题:测试邮件1" –deletecontent
Exchange邮件系统日志查看及管理

选择【A】全是,则会搜索所有的用户邮箱,并匹配主题名,然后进行删除。
Exchange邮件系统日志查看及管理

6.通过时间筛选删除邮件

Search-Mailbox -Identity majy -SearchQuery "发送时间:<2015/01/31"-deletecontent

Search-Mailbox -Identity majy -SearchQuery "发送时间:=2015/01/31"-deletecontent

Search-Mailbox -Identity majy -SearchQuery "发送时间:>2015/01/31"-deletecontent

Search-Mailbox -Identity majy -SearchQuery "发送时间:<2015/01/21 and 2015/01/31" –deletecontent