Search-Mailbox

內部部署 Exchange 和雲端式服務有提供此 Cmdlet。 有些參數和設定可能是某一個環境所專屬。

使用 Search-Mailbox Cmdlet 來搜尋信箱,並將結果複製到指定的目標信箱、從來源信箱刪除訊息,或兩者皆刪除。

注意:在雲端式環境中,Search-Mailbox Cmdlet 已被取代,而改用 New-ComplianceSearch 和相關的電子檔探索 Cmdlet。

根據預設,Search-Mailbox只能在信箱搜尋或信箱匯入匯出角色中使用,而且這些角色不會指派給 任何 角色群組。 若要使用此 Cmdlet,您必須將其中一個或兩個角色新增至角色群組 (例如,組織管理角色群組) 。 只有信箱匯入匯出角色可讓您存取 DeleteContent 參數。 如需將角色新增至角色群組的詳細資訊,請參閱 將角色新增至角色群組

如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法

Syntax

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

Description

您可以使用 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 的 Mailbox 中搜尋主旨中包含 「Your bank statement」 片語的郵件,並將結果記錄在系統管理員信箱的 SearchAndDeleteLog 資料夾中。 不會將郵件複製到目標信箱。

範例 3

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

本範例會在 April 的 Mailbox 中搜尋主旨中包含 「Your bank statement」 片語的郵件,並從來源信箱中刪除郵件。 您必須獲指派信箱匯入匯出管理角色,才能使用 DeleteContent 參數。

範例 4

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

此範例會搜尋組織中所有信箱中包含「選取」、「候選」或「投票」等字組的郵件。 搜尋結果會複製到 AllMailboxes-Selected 資料夾中的探索搜尋信箱。

參數

-Confirm

Confirm 參數會指定要顯示或隱藏確認提示。 這個參數對 Cmdlet 的影響取決於 Cmdlet 是否需要確認才能繼續作業。

  • 例如,具破壞性的 Cmdlet (例如 Remove-* Cmdlet) 內建暫停,可強制您在繼續之前確認命令。 對於這些 Cmdlet,您可以使用以下確切語法來略過確認提示:-Confirm:$false
  • 其他大部分的 Cmdlet (例如,New-* 和 Set-* Cmdlet) 沒有內建暫停。 在使用這些 Cmdlet 時,指定不含任何值的 Confirm 參數會引入強迫您認可命令後才繼續作業的暫停。
Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-DeleteContent

注意:您必須獲指派信箱匯入匯出管理角色,才能使用此參數。 根據預設,此角色不會指派給任何角色群組 (包括組織管理) 。 一般而言,您會將角色指派給內建或自訂角色群組。

DeleteContent 參數會指定從來源信箱永久刪除搜尋所傳回的訊息。 您不需要使用此參數指定值。

當您搭配 TargetMailbox 參數使用此參數時,訊息會複製到目標信箱,並從來源信箱中移除。 如果您將搜尋的記錄層級設定為 [基本] 或 [完整],則必須指定目標信箱和目的檔案夾來放置登入。 若要從來源信箱刪除訊息,而不將其複製到目標信箱,請勿指定 TargetMailbox、TargetFolder 和 LogLevel 參數。

使用 DeleteContent 參數刪除內容之前,建議您使用 LogOnly 參數來測試搜尋參數,如範例 2 所示。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-DomainController

此參數僅適用於內部部署 Exchange。

DomainController 參數會指定此 Cmdlet 用來向 Active Directory 讀取或寫入資料的網域控制站。 您可以透過網域控制站的完整網域名稱 (FQDN) 來識別網域控制站。 例如,dc01.contoso.com。

Type:Fqdn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-DoNotIncludeArchive

DoNotIncludeArchive 參數會指定使用者的封存信箱不應該包含在搜尋中。 您不需要為此參數指定值。

根據預設,一律會搜尋封存信箱。

如果已針對Exchange Online信箱啟用自動展開封存,則只會搜尋使用者的主要封存信箱。 搜尋中未包含輔助封存信箱。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-EstimateResultOnly

EstimateResultOnly 參數只會傳回訊息總數和大小的估計值。 不會將郵件複製到目標信箱。 您不需要使用此參數指定值。

您無法搭配 TargetMailbox 參數使用此參數。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-Force

Force 參數會隱藏警告或確認訊息。 您不需要使用此參數指定值。

當您使用 DeleteContent 參數永久刪除訊息時,請使用此參數來隱藏確認提示。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-Identity

Identity 參數會指定要搜尋的信箱身分識別。 您可以使用可唯一識別信箱的任何值。 例如:

  • 名稱
  • 別名
  • 辨別名稱 (DN)
  • 辨別名稱 (DN)
  • Domain\Username
  • 電子郵件地址
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • 使用者識別碼或使用者主要名稱 (UPN)
Type:MailboxOrMailUserIdParameter
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-IncludeUnsearchableItems

IncludeUnsearchableItems 參數包含無法由 Exchange 搜尋在搜尋結果中編制索引的專案。 您不需要使用此參數指定值。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-LogLevel

LogLevel 參數會指定搜尋的記錄層級。 它可以有下列其中一個值:

  • 隱藏:不會保留任何記錄。
  • 基本:保留查詢和執行者的基本資訊。
  • 完整:除了基本記錄層級所保留的資訊之外,完整記錄層級還會新增搜尋結果的完整清單。

預設記錄層級為 Basic。

當您包含此參數時,會建立電子郵件訊息並傳送至 TargetMailbox 參數所指定的信箱。 記錄檔 (名為 Search Results.csv) 的 CSV 格式檔案會附加至此電子郵件訊息,且會位於 TargetFolder 參數所指定的資料夾中。 當您執行 Search-Mailbox Cmdlet 時,記錄檔會針對搜尋結果中包含的每個訊息各包含一個資料列。

Type:LoggingLevel
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-LogOnly

LogOnly 參數會執行搜尋,但只會產生記錄檔。 搜尋傳回的訊息不會複製到目標信箱。 您不需要使用此參數指定值。

記錄層級是使用 LogLevel 參數指定。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-SearchDumpster

SearchDumpster 參數會指定是否要在搜尋中包含 [可復原的專案] 資料夾。 [可復原的專案] 資料夾會儲存已從 [刪除的郵件] 資料夾中刪除的專案,或是從信箱資料庫清除之前已實刪除的專案。

根據預設,[可復原的專案] 資料夾一律包含在搜尋中。 若要從搜尋中排除 [可復原的專案] 資料夾,請使用下列確切語法: -SearchDumpster:$false

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-SearchDumpsterOnly

SearchDumpsterOnly 參數指定只搜尋指定信箱的 [可復原的專案] 資料夾。 您不需要使用此參數指定值。

[可復原的專案] 資料夾會儲存已從 [刪除的郵件] 資料夾中刪除的專案,或是從信箱資料庫清除之前已實刪除的專案。

您也可以使用此參數搭配 DeleteContent 參數,從 [可復原的專案] 資料夾中刪除訊息,並減少資料夾的大小。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-SearchQuery

SearchQuery 參數會指定使用關鍵字查詢語言 (KQL) 格式化的搜尋字串或查詢。 如需 Exchange 中 KQL 的詳細資訊,請參閱 In-Place 電子檔探索的訊息屬性和搜尋運算子

如果此參數是空的,則會傳回所有訊息。

注意:如果指定搜尋查詢,Search-Mailbox Cmdlet 會傳回每個信箱最多 10000 個結果。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-TargetFolder

TargetFolder 參數會指定將搜尋結果儲存在目標信箱中的資料夾名稱。 資料夾會在執行時建立在目標信箱中。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-TargetMailbox

TargetMailbox 參數會指定複製搜尋結果的目的地信箱。 您可以使用可唯一識別信箱的任何值。 例如:

  • 名稱
  • 別名
  • 辨別名稱 (DN)
  • 辨別名稱 (DN)
  • Domain\Username
  • 電子郵件地址
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • 使用者識別碼或使用者主要名稱 (UPN)

您必須搭配 TargetFolder 參數使用此參數。 您無法搭配 EstimateResultOnly 參數使用此參數。

Type:MailboxIdParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

-WhatIf

WhatIf 參數會模擬命令的動作。 使用此參數時,您不需要實際套用變更即可檢視可能會發生的變更。 您不需要使用此參數指定值。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online

輸入

Input types

若要查看此指令程式可接受的輸入類型,請參閱指令程式輸入和輸出類型。 如果指令程式的 [輸入類型] 欄位是空的,表示指令程式不接受輸入資料。

輸出

Output types

若要查看此指令程式可接受的傳回類型 (也就是所謂的輸出類型),請參閱指令程式輸入和輸出類型。 如果 [輸出類型] 欄位是空的,表示指令程式不會傳回資料。