2
可能有一种简单的方法可以做到这一点,但在这一点上,我一直在头撞墙。我试图从AD中获取多个用户属性,比较其中两个属性,然后根据这些差异修改它们。然而,由于一些用户的办公室或部门领域的空值会导致比较对象失败,所以我将其替换为其他数组中的替换项以取消空值,因此我的变量如下所示:Powershell中的数组比较
$UserData = Get-ADuser -filter * -properties physicaldeliveryofficename,department | select samaccountname,physicaldeliveryofficename,department
$Offices = $UserData.physicaldeliveryofficename -replace "^$","N/A"
$Departments = $UserData.department -replace "^$","N/A"
到目前为止好,但当我循环比较值,我开始陷入困境。通过用户喜欢这个循环似乎每个元素比较所有其他元素:虽然没有一个循环,并利用
Foreach ($user in $UserData.samaccountname) {
Compare-object $offices $departments -includeqeual}
比较对象本身给出准确的结果,但后来我需要一个循环检查无论如何对于匹配。
假设我只是想确定哪些用户具有匹配的办公室和部门领域(并且基于它做了一个非常简单的Set-ADUser命令),我将如何比较这些值而不检查每个元素与其他每个元素?
工作就像一个魅力! –