Применимо к: Exchange Server 2010 SP1

Последнее изменение раздела: 2011-03-19

Командлет Export-Message используется для копирования сообщения из очереди на компьютере с установленной ролью транспортного сервера-концентратора или пограничного транспортного сервера в указанный каталог в организации Microsoft Exchange Server 2010.

Синтаксис

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

Параметры

Параметр Обязательный Тип Описание

Identity

Обязательный

Microsoft.Exchange.Data.QueueViewer.MessageIdentity

Параметр Identity указывает целочисленное значение MessageIdentity. Это целое число представляет определенное сообщение и, дополнительно, удостоверение сервера и очереди. Этот параметр может иметь следующий синтаксис:

  • сервер\удостоверение_очереди\удостоверение_сообщения

  • удостоверение_очереди\удостоверение_сообщения

  • Параметр QueueIdentity необходимо включать при применении команды Export-Message. Если имя сервера не используется, эта задача выполняется на локальном сервере.

Confirm

Необязательный

System.Management.Automation.SwitchParameter

Параметр Confirm приостанавливает обработку и требует указать действие, которое будет выполнено командой перед ее возобновлением. Указывать значение параметра Confirm не обязательно.

WhatIf

Необязательный

System.Management.Automation.SwitchParameter

Параметр WhatIf заставляет команду имитировать действия, которые она будет выполнять с объектом. С помощью параметра WhatIf можно просмотреть изменения, которые могут произойти, не применяя эти изменения. Указывать значение параметра WhatIf не обязательно.

Подробное описание

Командлет Export-Message копирует сообщения, находящиеся в очереди доставки, очереди недоступных сообщений или в очереди опасных сообщений на транспортном сервере-концентраторе или пограничном транспортном сервере, в указанную папку. Перед экспортом сообщения сначала необходимо приостановить сообщение. Сообщения в очереди опасных сообщений уже приостановлены. Командлет Export-Message копирует сообщения в каталог преобразования другого транспортного сервера для доставки.

Для запуска этого командлета необходимы соответствующие разрешения. В этом разделе перечислены все параметры командлета, однако некоторые из них могут быть недоступны, если они не включены в назначенные разрешения. Сведения о необходимых разрешениях см. в разделе Запись «Очереди» в разделе Разрешения транспорта.

Примеры

ПРИМЕР 1

В данном примере отдельное сообщение экспортируется в файл по указанному пути. Так как командлет Export-Message возвращает двоичный объект, необходимо использовать фильтр AssembleMessage, чтобы иметь возможность сохранять содержимое сообщения в указанном местоположении.

Скопировать код
Export-Message -Identity ExchSrv1\contoso.com\1234 | AssembleMessage -Path "c:\exportfolder\filename.eml"

ПРИМЕР 2

В данном примере запрашиваются все сообщения из указанной очереди. Затем результаты выполнения запроса передаются в команду Export-Message, и все сообщения копируются в отдельные файлы EML. В качестве имен файлов используются идентификаторы сообщений Интернета. Для этого команда выполняет следующие действия.

  • Возвращает все сообщения в отдельную очередь с помощью командлета Get-Message.

  • Результат передается по конвейеру в командлет ForEach-Object, который выполняет для каждого сообщения следующие действия:

    • Подготавливает имя файла, включающее полный путь, с помощью временной переменной $Temp, содержащей идентификатор сообщения Интернета с расширением EML. Поле идентификатора сообщения Интернета содержит угловые скобки («>» и «<»), которые необходимо удалить, так как они недопустимы в имени файла. Удалить скобки можно способом Replace временных переменных.

    • Экспортирует сообщение с подготовленным именем файла.

Скопировать код
Get-Message -Queue "Server1\contoso.com" | ForEach-Object {$Temp="C:\ExportFolder\"+$_.InternetMessageID+".eml";$Temp=$Temp.Replace("<","_");$Temp=$Temp.Replace(">","_");Export-Message $_.Identity | AssembleMessage -Path $Temp}