我有一个脚本,它拍摄 AD 组的快照并根据当前 AD 状态检查成员资格是否发生变化。它将 psobject 添加到数组并将表输出到 html 文件。问题是我想合并组中的结果,这样它就不会重复用户 1 从组 1 中删除,用户 2 从组 1 中删除。当前输出是:
object action group
user1 removed group1
user2 removed group1
userN removed groupN
我希望脚本合并条目,以便输出如下:
object action group
user1 removed group1
user2
userN removed groupN
你知道该怎么做吗?
答案1
也许您可以使用 powershell 中的 Compare-Object 函数来检查这两个数组。
比较对象函数的一个示例是:
PS> $shot1 = 1..10
PS> $shot2 = 10..1
PS> Compare-Object $shot1 $shot2
PS> $shot1 = 1..15
PS> $shot2 = 15..1
PS> Compare-Object -ReferenceObject $shot1 -DifferenceObject $shot2
InputObject SideIndicator
----------- -------------
15 =>
1 <=
14 =>
2 <=
2 =>
1 =>
14 <=
15 <=
结果表明属性值仅出现在参考集中(用 <= 表示),仅出现在差异集中(用 => 表示)或同时出现在两个对象中(当指定 -IncludeEqual 参数时用 == 表示)。