到目前为止,我已经使用了一个包罗万象的邮箱。我使用不同的邮件地址注册了每个帐户,例如stackoverflow.com@mydDomain.de
由于我刚刚切换到O365,我想为所有帐户创建别名。我将所有邮件都导入O365,我需要获取所有收件人地址。
因此,我需要一个Powershell脚本来遍历O365 Mailsbox中的所有消息,以提取Mail recpient。
我尝试使用get-MessageTrace,它似乎正在运行:
$dateOBJ = (Get-Date).Adddays(-30);
$allRecipientsARY = Get-MessageTrace -StartDate $dateOBJ -EndDate (Get-Date) | Group-Object -Property RecipientAddress | Select name
$recipientsARY = @()
ForEach ($recipientSTR in $allRecipientsARY)
{
if($recipientSTR -like '*myDomain.com*')
{
$recipientsARY = $recipientsARY + $recipientSTR
}
}
$recipientsARY | Export-Csv c:\temp\mailAddresses.csv –NoTypeInformation -Encoding UTF8
问题是get-MessageTrace函数仅支持从当前日期开始30天的邮件。
还有其他选择吗?到目前为止,我还没找到一个......
-thx 戴夫