Search-Mailbox

此 cmdlet 仅适用于本地 Exchange。

使用 Search-Mailbox cmdlet 可以搜索邮箱并将结果复制到指定的目标邮箱,从源邮箱删除邮件,或同时从目标邮箱和源邮箱中删除邮件。

注意:在基于云的环境中,Search-Mailbox cmdlet 已弃用,转而使用 New-ComplianceSearch 和相关电子数据展示 cmdlet。

默认情况下,Search-Mailbox 仅在邮箱搜索或邮箱导入导出角色中可用,并且这些角色不会分配给 任何 角色组。 若要使用此 cmdlet,需要将一个或两个角色添加到角色组 (例如组织管理角色组) 。 只有邮箱导入导出角色才允许你访问 DeleteContent 参数。 有关向角色组添加角色的详细信息,请参阅 向角色组添加角色

有关以下语法部分的参数设置的详细信息,请参阅 Exchange cmdlet 语法

语法

Identity

Search-Mailbox
    [-Identity] <MailboxOrMailUserIdParameter>
    [-Confirm]
    [-DeleteContent]
    [-DomainController <Fqdn>]
    [-DoNotIncludeArchive]
    [-Force]
    [-IncludeUnsearchableItems]
    [-SearchDumpster]
    [-SearchDumpsterOnly]
    [-SearchQuery <String>]
    [-WhatIf]
    [<CommonParameters>]

EstimateResult

Search-Mailbox
    [-Identity] <MailboxOrMailUserIdParameter>
    [-EstimateResultOnly]
    [-Confirm]
    [-DomainController <Fqdn>]
    [-DoNotIncludeArchive]
    [-Force]
    [-IncludeUnsearchableItems]
    [-SearchDumpster]
    [-SearchDumpsterOnly]
    [-SearchQuery <String>]
    [-WhatIf]
    [<CommonParameters>]

Mailbox

Search-Mailbox
    [-Identity] <MailboxOrMailUserIdParameter>
    -TargetFolder <String>
    -TargetMailbox <MailboxIdParameter>
    [-Confirm]
    [-DeleteContent]
    [-DomainController <Fqdn>]
    [-DoNotIncludeArchive]
    [-Force]
    [-IncludeUnsearchableItems]
    [-LogLevel <LoggingLevel>]
    [-LogOnly]
    [-SearchDumpster]
    [-SearchDumpsterOnly]
    [-SearchQuery <String>]
    [-WhatIf]
    [<CommonParameters>]

说明

您可以使用 Search-Mailbox cmdlet 搜索指定的邮箱中的邮件并执行下列任一任务:

  • 将邮件复制到指定的目标邮箱。
  • 从源邮箱中删除邮件。 您必须分配有“邮箱导入导出”管理角色才能删除邮件。
  • 执行单个项目恢复以恢复用户的“可恢复项目”文件夹中的项目。
  • 在邮箱的“可恢复项目”文件夹达到“可恢复项目”硬配额时进行清理。

示例

示例 1

Search-Mailbox -Identity "Joe Healy" -SearchQuery "Subject:Project Hamilton" -TargetMailbox "DiscoveryMailbox" -TargetFolder "JoeHealy-ProjectHamilton" -LogLevel Full

本示例搜索 Joe Healy 的邮箱,并将搜索结果复制到 JoeHealy-ProjectHamilton 文件夹中的 DiscoveryMailbox 中。

示例 2

Search-Mailbox -Identity "April Stewart" -SearchQuery 'Subject:"Your bank statement"' -TargetMailbox "administrator" -TargetFolder "SearchAndDeleteLog" -LogOnly -LogLevel Full

本示例搜索 April Stewart 的邮箱中主题包含“Your bank statement”短语的邮件,并将结果记录在管理员邮箱的 SearchAndDeleteLog 文件夹中。 邮件将不复制到目标邮箱。

示例 3

Search-Mailbox -Identity "April Stewart" -SearchQuery 'Subject:"Your bank statement"' -DeleteContent

本示例搜索 April Stewart 的邮箱中主题包含“Your bank statement”短语的邮件,然后从源邮箱中删除这些邮件。 您必须分配有“邮箱导入导出”管理角色才能使用 DeleteContent 开关。

示例 4

Get-Mailbox | Search-Mailbox -SearchQuery 'election OR candidate OR vote' -TargetMailbox "Discovery Search Mailbox" -TargetFolder "AllMailboxes-Election" -LogLevel Full

此示例将在组织的所有邮箱中搜索包含单词“election”、“candidate”或“vote”的邮件。 搜索结果会复制到文件夹 AllMailboxes-Election 下的 Discovery Search Mailbox 中。

参数

-Confirm

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

Confirm 开关指定是否显示确认提示。 此开关对 cmdlet 造成的影响取决于在你继续操作之前 cmdlet 是否需要确认。

  • 破坏性 cmdlet(例如 Remove-* cmdlets)内置有暂停,可强制要求先确认命令,然后再继续操作。 对于这些 cmdlet,您可以使用此确切语法跳过确认提示:-Confirm:$false
  • 其他大多数 cmdlet(例如 New-* 和 Set-* cmdlet)都没有内置暂停。 对于这些 cmdlet,指定不含值的 Confirm 开关会引入暂停,从而强制要求你先确认命令,然后再继续操作。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DeleteContent

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

注意:需要分配邮箱导入导出管理角色才能使用此开关。 默认情况下,此角色不会分配给任何角色组 (包括组织管理) 。 通常,您可以将角色分配给内置或自定义角色组。

DeleteContent 开关指定从源邮箱中永久删除由搜索返回的邮件。 不必为此开关指定值。

将此开关与 TargetMailbox 参数一起使用时,邮件将复制到目标邮箱并从源邮箱中删除。 如果将搜索的日志记录级别设置为 Basic 或 Full,则必须指定用来放置日志的目标邮箱和目标文件夹。 若要从源邮箱中删除邮件,而不将其复制到目标邮箱中,请不要指定 TargetMailbox、TargetFolder 和 LogLevel 参数。

使用 DeleteContent 开关删除内容之前,建议您使用 LogOnly 参数测试搜索参数,如示例 2 中所示。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

Mailbox
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
Identity
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DomainController

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

DomainController 参数指定此 cmdlet 从 Active Directory 读取数据或向其写入数据时使用的域控制器。 可以使用完全限定的域名 (FQDN) 来标识域控制器。 例如,dc01.contoso.com。

参数属性

类型:Fqdn
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DoNotIncludeArchive

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

DoNotIncludeArchive 开关指定不得搜索用户的存档邮箱。 无需指定此开关的值。

默认情况下,始终都会搜索存档邮箱。

如果为Exchange Online邮箱启用了自动扩展存档,则仅搜索用户的主存档邮箱。 不会搜索辅助存档邮箱。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EstimateResultOnly

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

EstimateResultOnly 开关仅返回消息总数和大小的估计值。 邮件将不复制到目标邮箱。 不必为此开关指定值。

此开关不能与 TargetMailbox 参数一起使用。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

EstimateResult
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Force

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

强制开关隐藏警告或确认消息。 不必为此开关指定值。

使用 DeleteContent 开关永久删除邮件时,使用此开关可隐藏确认提示。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Identity

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

Identity 参数指定要搜索的邮箱的标识。 可以使用能够唯一标识邮箱的任意值。 例如:

  • 名称
  • 别名
  • 可分辨名称 (DN)
  • 可分辨名称 (DN)
  • 域\用户名
  • 电子邮件地址
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • 用户 ID 或用户主体名称 (UPN)

参数属性

类型:MailboxOrMailUserIdParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:1
必需:True
来自管道的值:True
来自管道的值(按属性名称):True
来自剩余参数的值:False

-IncludeUnsearchableItems

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

IncludeUnsearchableItems 开关包括 Exchange 搜索无法在搜索结果中编制索引的项目。 不必为此开关指定值。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-LogLevel

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

LogLevel 参数指定搜索的日志记录级别。 它可以具有下列值之一:

  • 禁止显示:不保留任何日志。
  • 基本信息:保留有关查询及其运行者的基本信息。
  • 完整:除了基本日志级别保留的信息外,完整日志级别还会添加搜索结果的完整列表。

默认日志级别为 Basic。

如果包含此参数,则会创建一封电子邮件并将其发送到 TargetMailbox 参数指定的邮箱。 日志文件 (,该文件是 CSV 格式的文件,名为“搜索 Results.csv) ”附加到此电子邮件,位于 TargetFolder 参数指定的文件夹中。 运行 Search-Mailbox cmdlet 时,日志文件包含搜索结果中的每个邮件的行。

参数属性

类型:LoggingLevel
默认值:None
支持通配符:False
不显示:False

参数集

Mailbox
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-LogOnly

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

LogOnly 开关执行搜索,但仅生成日志。 搜索返回的邮件将不复制到目标邮箱。 不必为此开关指定值。

通过使用 LogLevel 参数指定日志记录级别。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

Mailbox
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SearchDumpster

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

SearchDumpster 开关指定是否在搜索中包含“可恢复的项目”文件夹。 “可恢复邮件”文件夹存储从“已删除邮件”文件夹中删除的项目或从邮箱数据库清除之前被硬删除的项目。

默认情况下,搜索中始终包含“可恢复的项目”文件夹。 若要从搜索中排除“可恢复的项目”文件夹,请使用以下确切语法: -SearchDumpster:$false

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SearchDumpsterOnly

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

SearchDumpsterOnly 开关指定仅搜索指定邮箱的“可恢复邮件”文件夹。 不必为此开关指定值。

“可恢复邮件”文件夹存储从“已删除邮件”文件夹中删除的项目或从邮箱数据库清除之前被硬删除的项目。

您还可以将此开关与 DeleteContent 开关一起使用,以删除“可恢复项目”文件夹中的邮件,从而减小该文件夹的大小。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SearchQuery

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

SearchQuery 参数指定使用关键字查询语言 (KQL) 格式的搜索字符串或查询。 有关 Exchange 中的 KQL 的详细信息,请参阅 用于 In-Place 电子数据展示的消息属性和搜索运算符

如果此参数为空,则返回所有的邮件。

注意:如果指定了搜索查询,Search-Mailbox cmdlet 每个邮箱最多返回 10000 个结果。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-TargetFolder

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

TargetFolder 参数指定目标邮箱中用来保存搜索结果的文件夹名称。 执行时在目标邮箱中创建该文件夹。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

Mailbox
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-TargetMailbox

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

TargetMailbox 参数指定将搜索结果复制到的目标邮箱。 可以使用能够唯一标识邮箱的任意值。 例如:

  • 名称
  • 别名
  • 可分辨名称 (DN)
  • 可分辨名称 (DN)
  • 域\用户名
  • 电子邮件地址
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • 用户 ID 或用户主体名称 (UPN)

必须将此参数与 TargetFolder 参数一起使用。 此参数不能与 EstimateResultOnly 开关一起使用。

参数属性

类型:MailboxIdParameter
默认值:None
支持通配符:False
不显示:False

参数集

Mailbox
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019

WhatIf 开关模拟命令操作。 可以使用此开关在不实际应用将会发生的更改的情况下预览这些更改。 不必为此开关指定值。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

Input types

若要了解此 cmdlet 接受的输入类型,请参阅 cmdlet 的输入和输出类型。 如果 cmdlet 的"输入类型"字段为空,则表明此 cmdlet 不接受输入数据。

输出

Output types

若要了解此 cmdlet 接受的返回类型(亦称为"输出类型"),请参阅 cmdlet 的输入和输出类型。 如果"输出类型"字段为空,则表明此 cmdlet 不返回任何数据。