Get-Message (RTM)

 

适用于: Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2007-08-06

使用 Get-Message cmdlet 可查看安装了集线器传输服务器角色或边缘传输服务器角色的计算机上的队列中的一封或多封邮件的详细信息。

语法

Get-Message [-BookmarkIndex <Int32>] [-BookmarkObject <MessageInfo>] [-Filter <String>] [-IncludeBookmark <$true | $false>] [-IncludeRecipientInfo <SwitchParameter>] [-ResultSize <Unlimited>] [-ReturnPageInfo <$true | $false>] [-SearchForward <$true | $false>] [-Server <ServerIdParameter>] [-SortOrder <SortOrderEntry[]>]

Get-Message [-Identity <MessageIdentity>] [-BookmarkIndex <Int32>] [-BookmarkObject <MessageInfo>] [-IncludeBookmark <$true | $false>] [-IncludeRecipientInfo <SwitchParameter>] [-ResultSize <Unlimited>] [-ReturnPageInfo <$true | $false>] [-SearchForward <$true | $false>] [-SortOrder <SortOrderEntry[]>]

Get-Message [-BookmarkIndex <Int32>] [-BookmarkObject <MessageInfo>] [-IncludeBookmark <$true | $false>] [-IncludeRecipientInfo <SwitchParameter>] [-Queue <QueueIdentity>] [-ResultSize <Unlimited>] [-ReturnPageInfo <$true | $false>] [-SearchForward <$true | $false>] [-SortOrder <SortOrderEntry[]>]

详细说明

Get-Message cmdlet 显示集线器传输服务器或边缘传输服务器上现有队列中的一封或多封邮件的详细信息。如果未提供任何参数,则该命令将查询本地服务器上任何队列中的所有邮件并返回单页结果。默认页面大小为 1,000 个对象。通过在 Identity 参数或 Queue 参数中包含服务器名称,或在筛选器查询中包含 Server 参数,可以显示远程服务器上的邮件。Identity 参数、Queue 参数和 Filter 参数的设置是互斥的。

若要运行 Get-Message cmdlet,必须为您使用的帐户委派 Exchange Server Administrators 角色。

若要在安装了边缘传输服务器角色的计算机上运行 Get-Message cmdlet,则必须使用作为该计算机上的本地 Administrators 组成员的帐户进行登录。

有关管理 Microsoft Exchange Server 2007 所需的权限、角色委派以及权利的详细信息,请参阅权限注意事项

参数

参数 必需 类型 说明

BookmarkIndex

可选

System.Int32

使用 BookmarkIndex 参数指定所显示的结果在结果集中的起始位置。此参数的值是结果集总数中从 1 开始的索引。BookmarkIndex 不能与 BookmarkObject 参数一起使用。

BookmarkObject

可选

Microsoft.Exchange.Data.QueueViewer.MessageInfo

使用 BookmarkObject 参数指定所显示的结果在结果集中的起始对象。BookmarkObject 不能与 BookmarkIndex 参数一起使用。

Filter

可选

System.String

Filter 参数需要一个表达式来为要显示的邮件指定属性值条件。表达式中包含属性名后接比较运算符和值。下列邮件属性是 Filter 参数的有效条件:

  • DateReceived   接收邮件的日期。

  • ExpirationTime   邮件的过期时间。

  • FromAddress   邮件发件人的简单邮件传输协议 (SMTP) 地址。此值是从邮件信封中的 MAIL FROM: 获取的。

  • Identity   表示特定邮件以及可选的服务器和队列标识的整数。

  • InternetMessageId   Message-ID: 头字段的值。此属性以后跟发送服务器的 SMTP 地址的 GUID 来表示,如下例所示:67D7543D6103DC4FBEBA6BC7205DACABA61231@exchange.contoso.com。

  • LastError   为邮件记录的上一个错误的文本字符串。

  • MessageSourceName   将此邮件提交给队列的组件名的文本字符串。

  • Queue   指定容纳该邮件的队列的标识。以服务器\目标格式输入队列标识,其中的目标是远程域、邮箱服务器或永久队列名。

  • RetryCount   尝试将邮件传递到目标地址的次数。

  • SCL   SCL 属性指定邮件的垃圾邮件可信度。有效的 SCL 条目是从 0 到 9 的整数。空 SCL 属性值表示邮件尚未经过内容筛选器代理处理。

  • Size   邮件的大小。

  • SourceIP   将邮件提交给 Exchange 组织的外部服务器的 IP 地址。

  • Status   邮件的当前状态。邮件状态选项为“活动”、“重试”、“已挂起”、“暂停挂起”或“暂停删除”。

  • Subject   表示电子邮件主题的文本字符串。该值是从 Subject: 头字段中获取的。

可以使用 - and 比较运算符指定多个筛选条件。未以一个整数表示的属性值必须加上引号。

Identity

可选

Microsoft.Exchange.Data.QueueViewer.MessageIdentity

使用 Identity 参数指定 MessageIdentity 整数。此整数表示特定邮件以及可选的服务器和队列标识。此参数的语法如下所示:

  • Server\QueueIdentity\MessageIdentity

  • QueueIdentity\MessageIdentity

  • Server\*\MessageIdentity

  • MessageIdentity

IncludeBookmark

可选

System.Boolean

使用 IncludeBookmark 参数指定在显示查询结果时是否包含书签对象。IncludeBookmark 参数与 BookmarkObjectBookmarkIndex 参数一起使用时有效。如果未指定 IncludeBookmark 参数的值,则使用默认值 $true

IncludeRecipientInfo

可选

System.Management.Automation.SwitchParameter

使用 IncludeRecipientInfo 参数可在“收件人”字段显示邮件收件人。如果不包含 IncludeRecipientInfo 参数,则收件人字段为空。

Get-Message -IncludeRecipientInfo 命令的结果存储在变量中可显示邮件收件人的其他属性。以下列表介绍了可用收件人的属性:

  • 地址   收件人的电子邮件地址

  • 类型   收件人类型可以是外部、邮箱或 DL。当目标是一个展开服务器时使用 DL。

  • FinalDestination   用于路由邮件的对象的可分辨名称 (DN)。该对象可以是连接器、邮箱服务器或展开服务器。

  • 状态   收件人状态可以是完成、准备或重试。

  • LastError 如果消息置于无法访问的队列中,则该对象是最后一次传递尝试或本地化错误消息之后的 SMTP 响应。

例如,若要将 MessageIdentity 值为 1234 的“Contoso.com”远程传递队列中的邮件的收件人信息存储到名为 $x 的变量中,可使用以下命令:

$x=Get-Message -Identity "Contoso.com\1234" -IncludeRecipientInfo

若要显示当前存储于 $x 变量中的扩展收件人属性,可使用以下命令:

$x.Recipients

Queue

可选

Microsoft.Exchange.Data.QueueViewer.QueueIdentity

使用 Queue 参数指定包含要显示的邮件的队列的标识。以 服务器\目标 格式输入队列标识,其中的 目标 是远程域、邮箱服务器或永久队列名。

ResultSize

可选

Microsoft.Exchange.Data.Unlimited

使用 ResultSize 参数指定在结果集中显示的总项数。ResultSize 参数的默认值设置为 1,000。ResultSize 不限制结果数,但是 Microsoft Exchange 将结果集限制为 250,000。

ReturnPageInfo

可选

System.Boolean

ReturnPageInfo 参数是隐藏参数。使用该参数返回当前页面的总结果数以及第一个对象的索引的有关信息。默认值为 $false

SearchForward

可选

System.Boolean

使用 SearchForward 参数指定在结果集中向前搜索还是向后搜索。默认值为 $true。此值使结果页从结果集开头向前计算或从指定的书签向前计算。

Server

可选

Microsoft.Exchange.Configuration.Tasks.ServerIdParameter

使用 Server 参数指定要使用远程过程调用 (RPC) 连接到的服务器名称,该远程过程调用包含容纳要显示的邮件的队列。以主机名或完全限定的域名 (FQDN) 输入 Server 参数。如果不使用此参数,则将查询本地服务器。

SortOrder

可选

Microsoft.Exchange.Configuration.Tasks.SortOrderEntry[]

使用 SortOrder 参数指定用于控制结果集排序顺序的邮件属性数组。每个属性使用逗号分隔。如果在属性名开头添加一个 + 符号,则按升序显示结果。如果在属性名开头添加一个 - 符号,则按降序显示结果。如果不指定排序顺序,则按 MessageIdentity 整数的升序显示结果集。

示例

下列示例显示如何使用 Get-Message 命令查询邮件。第一个示例显示如何显示在本地服务器上排队的、由指定域的任何发件人发送的所有邮件。该命令通过管道传输给 Format-List 命令,以便将结果格式化为详细列表。

第二个示例显示如何显示在本地服务器上排队的、由指定域的任何发件人发送的并且 SCL 值大于 3 的所有邮件。

第三个示例显示如何连接到远程服务器以及如何按照指定排序顺序显示在远程服务器上排队的所有邮件。结果先按发件人地址的升序排序,再按大小的降序排序。

有关管道传输的详细信息,请参阅管道传输

有关如何处理命令输出的详细信息,请参阅使用命令输出

有关如何使用 Exchange 命令行管理程序执行队列查看器任务的详细信息,请参阅使用 Exchange 命令行管理程序管理队列

Get-Message -Filter {FromAddress -like "*@contoso.com"} | format-list
Get-Message -Filter {FromAddress -like "*@contoso.com" -and SCL -gt 3}
Get-Message -Server exchange.contoso.com -SortOrder: +FromAddress,-Size