Export-Message
內部部署 Exchange 才有提供此 Cmdlet。
使用 Export-Message 指令程式以從信箱伺服器或 Edge Transport server 中的佇列複製郵件。
如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法。
Syntax
Export-Message
[-Identity] <MessageIdentity>
[-Confirm]
[-WhatIf]
[<CommonParameters>]
Description
Export-Message 指令程式會將 Mailbox Server 或 Edge Transport Server 之傳遞佇列、無法存取之佇列或毒藥郵件佇列中的郵件複製至指定的檔案路徑。 匯出郵件之前,必須先暫停郵件。 已暫停毒藥郵件佇列中的郵件。 您可以使用 Export-Message 指令程式,將郵件複製到另一個 Mailbox Server 的重新顯示目錄以進行傳遞。
您必須已獲指派權限,才能執行此指令程式。 雖然本主題已列出這個指令程式的所有參數,不過,如果某些參數並未包含在指派給您的權限中,您可能就無法存取這些參數。 若要尋找在組織中執行任何 Cmdlet 或參數所需的權限,請參閱 Find the permissions required to run any Exchange cmdlet。
範例
範例 1
Export-Message ExchSrv1\contoso.com\1234 | AssembleMessage -Path "c:\exportfolder\filename.eml"
本範例會將單一郵件匯出到指定的檔案路徑。 由於 Export-Message 指令程式傳回二進位物件,您必須使用可將郵件內容儲存到指定位置的 AssembleMessage 篩選器。
範例 2
Get-Message -Queue "Server1\contoso.com" -ResultSize Unlimited | ForEach-Object {Suspend-Message $_.Identity -Confirm:$False
$Temp="C:\ExportFolder\"+$_.InternetMessageID+".eml"
$Temp=$Temp.Replace("<","_")
$Temp=$Temp.Replace(">","_")
Export-Message $_.Identity | AssembleMessage -Path $Temp}
本範例會從指定的佇列擷取所有郵件。 接著會將查詢結果以管線傳送至 Export-Message 命令,並將所有郵件複製為個別的 .eml 檔案。 每個郵件的網際網路郵件識別碼會作為檔案名稱。 命令會進行下面的動作以完成此工作:
- 使用 Get-Message 指令程式在特定佇列中擷取所有郵件。
- 結果可傳輸至 ForEach-Object 指令程式,此指令程式將使用包含 .eml 副檔名的 Internet Message ID 之暫存變數 $Temp 來準備包含完整路徑的檔案名稱。 [網際網路訊息識別碼] 欄位包含角括弧 (
<
和>
) ,因為其檔案名無效,因此需要移除。 可使用暫時變數的 Replace 方法完成。 - ForEach-Object 指令程式同時使用備妥的檔案名稱匯出郵件。
參數
-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 |
-Identity
Identity 參數會指定郵件。 此參數的有效輸入會使用以下語法:Server\Queue\MessageInteger 或 Queue\MessageInteger 或 MessageInteger,例如,Mailbox01\contoso.com\5 或 10。 如需訊息識別的詳細資訊,請參閱 訊息身分識別。
Type: | MessageIdentity |
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 |
-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 |
輸入
Input types
若要查看此指令程式可接受的輸入類型,請參閱指令程式輸入和輸出類型。 如果指令程式的 [輸入類型] 欄位是空的,表示指令程式不接受輸入資料。
輸出
Output types
若要查看此指令程式可接受的傳回類型 (也就是所謂的輸出類型),請參閱指令程式輸入和輸出類型。 如果 [輸出類型] 欄位是空的,表示指令程式不會傳回資料。