Export-Message

이 cmdlet은 온-프레미스 Exchange에서만 제공됩니다.

Export-Message cmdlet을 사용하면 사서함 서버 또는 Edge 전송 서버에 있는 큐의 메시지를 조직의 지정된 파일 경로로 복사할 수 있습니다.

아래 구문 섹션에 있는 매개 변수 집합에 대한 자세한 내용은 Exchange cmdlet 구문을 참조하십시오.

Syntax

Export-Message
      [-Identity] <MessageIdentity>
      [-Confirm]
      [-WhatIf]
      [<CommonParameters>]

Description

Export-Message cmdlet은 사서함 서버 또는 Edge 전송 서버의 배달 큐, 연결할 수 없는 큐 또는 포이즌 메시지 큐에 있는 메시지를 지정된 파일 경로에 복사합니다. 메시지를 내보내려면 먼저 메시지를 일시 중단해야 합니다. 포이즌 메시지 큐의 메시지는 이미 일시 중단된 상태입니다. Export-Message cmdlet을 사용하면 배달을 위해 메시지를 다른 사서함 서버의 Replay 디렉터리에 복사할 수 있습니다.

이 cmdlet을 실행하려면 먼저 사용 권한을 할당받아야 합니다. 이 항목에는 해당 cmdlet의 모든 매개 변수가 나열되지만 사용자에게 할당된 사용 권한에 포함되지 않은 일부 매개 변수에는 액세스할 수 없습니다. 조직에서 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 cmdlet에서는 이진 개체가 반환되므로 메시지 콘텐츠를 지정된 위치에 저장할 수 있으려면 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 파일에 복사됩니다. 각 메시지의 인터넷 메시지 ID가 파일 이름으로 사용됩니다. 이 작업을 위해 명령에서 다음을 수행합니다.

  • Get-Message cmdlet을 사용하여 특정 큐에 있는 모든 메시지를 검색합니다.
  • 결과는 ForEach-Object cmdlet으로 파이프라인되고, 이 cmdlet이 인터넷 메시지 ID로 구성된 임시 변수 $Temp를 사용하여 전체 경로를 포함하는 파일 이름을 .eml 확장명으로 준비합니다. 인터넷 메시지 ID 필드에는 잘못된 파일 이름이기 때문에 제거해야 하는 각진 대괄호(<>)가 포함되어 있습니다. 이 작업은 임시 변수의 Replace 메서드를 사용하여 수행됩니다.
  • 또한 ForEach-Object cmdlet은 준비된 파일 이름을 사용하여 메시지를 내보냅니다.

매개 변수

-Confirm

Confirm 스위치는 확인 메시지를 표시할지 여부를 지정합니다. 진행하기 전에 cmdlet이 확인을 요구하는지에 따라 이 스위치가 cmdlet에 미치는 영향이 달라집니다.

  • 파괴적인 cmdlet(예: Remove-* cmdlet)에는 계속하기 전에 명령을 강제로 승인하도록 하는 기본 제공 일시 중지가 있습니다. 이러한 cmdlet의 경우 정확한 구문 -Confirm:$false를 사용하여 확인 메시지를 건너뛸 수 있습니다.
  • 대부분의 다른 cmdlet(예: New-* 및 Set-* cmdlet)에는 기본 제공 일시 중지가 없습니다. 이러한 cmdlet의 경우 값 없이 스위치를 지정하면 계속하기 전에 명령을 강제로 확인하도록 하는 일시 중지가 추가됩니다.
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). 메시지 ID에 대한 자세한 내용은 메시지 ID를 참조하세요.

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

이 cmdlet이 수락하는 입력 형식을 보려면 Cmdlet 입출력 형식을 참조하세요. cmdlet의 입력 형식 필드가 비어 있을 경우 cmdlet은 입력 데이터를 수락하지 않습니다.

출력

Output types

이 cmdlet이 수락하는 반환 형식(출력 형식이라고도 함)을 보려면 Cmdlet 입출력 형식을 참조하세요. 출력 형식 필드가 비어 있는 경우 cmdlet은 데이터를 반환하지 않습니다.