У нас есть отдельное устройство архивирования, которое архивирует сообщения по мере их поступления с использованием учетной записи журнала. Перед этим мне пришлось бы вручную заархивировать каждый почтовый ящик в файл PST, а затем сохранить файл на нашем сервере хранения. К счастью, мне больше не нужно этого делать.
У меня вопрос: можно ли, используя Powershell, войти в каждый (или все сразу) почтовый ящик и удалить сообщения электронной почты до определенной даты? Это избавит меня от необходимости архивировать каждый почтовый ящик в файл PST, даже если я смогу удалить этот файл позже. Я не хочу трогать элементы календаря, только элементы почты (папки и подпапки).
Если у вас есть Exchange Server 2007 SP1, вы можете использовать Export-Mailbox
командлет с -DeleteContent
flag и без цели, чтобы просто удалить в электронную почту элементы, которые в противном случае были бы экспортированы:
Get-Mailbox | Export-Mailbox -EndDate (Get-Date).AddDays(-90) -DeleteContent
В этом примере будут удалены все элементы во всех папках, созданные ранее 90 дней назад. У вас должны быть права полного доступа к каждому почтовому ящику, с которым вы выполняете эту операцию.
Чтобы исключить определенные папки, такие как Контакты или Календарь, используйте -ExcludeFolders
флаг, например:
Export-Mailbox -ExcludeFolders "\Contacts","\Calendar" -DeleteContent