从找到的文档here。
可以使用通配符过滤属性EmailAddresses
。但是,使用通配符时,搜索结果无效。我的代码是:
Get-DistributionGroup -Filter { EmailAddresses -like "email*" }
我可以在使用时找到该组:
Get-DistributionGroup -Filter { EmailAddresses -eq "email@domain.com" }
但如果我使用支持文档的通配符,则找不到任何内容。
我知道我可以通过将命令汇总到Where-Object
或ForEach-Object
来完成此功能,但是使用数千个对象这比使用-Filter
要花费更多时间,所以我是只是想知道是否确实可以用外卡过滤EmailAddresses
。
我也知道我可以使用PrimarySmtpAddress
或WindowsEmailAddress
进行过滤,但我希望能够通过EmailAddresses
属性下的任何电子邮件地址进行搜索。< / p>
答案 0 :(得分:0)
当您使用-Filter作为参数时,您不使用标准的PowerShell过滤(这是-Like比较运算符的来源)。相反,您仍然使用提供程序的本机过滤功能。这些通常使用与PowerShell执行方式不同的非常奇怪的语法。
阅读允许使用哪些比较运算符的完整细分,我看到Emailaddresses确实允许使用通配符...所以我认为这已经破了。对不起,这应该是, based on what I see here.
答案 1 :(得分:0)
我需要包含前缀。这样做后效果很好。
Get-DistributionGroup -Filter { EmailAddresses -like "smtp:email*" }