【发布时间】:2019-10-21 09:57:34
【问题描述】:
我有多个 o365 帐户,分配了 A1 许可证或 A1 和 A1plus 许可证。我只需要找到拥有 A1 许可证的用户并将 A1plus 许可证添加给他们。
在 10 个混合使用 A1 和 A1+A1plus 许可证的测试用户上运行的 PS 下仍然显示所有这些用户。
Get-msoluser -all |
Where-Object {$_.userprincipalname -match '@students.test.com' -and
($_.licenses).accountskuid -match 'test:A1' -and
($_.licenses).accountskuid -notmatch 'test:A1plus'}
我希望只看到拥有 A1 许可证的用户,而不是拥有各种许可证且其中一个是 A1 的用户。
【问题讨论】:
-
听起来您希望只分配一个总许可的用户,而该许可恰好是这个特定的不正确许可。对吗?
-
嗨。是的。这是对的。我只需要找到他们只分配了 A1 许可证的用户,并为他们添加 A1 plus 许可证。
-
您可以使用
-notcontains,而不是使用-notmatch。由于accountskuid可能包含一个集合,-notmatch将至少在其中一个项目上为真。所以总的来说,它总是会评估为真。 -
尊敬的 AdminOfThings。你真棒。 -notcontains 就像一个魅力。非常感谢你的芽。
标签: powershell office365 user-accounts