我想搜索特定电话号码/分机的Active Directory用户的所有属性。
我可以得到所有的属性:
get-aduser joesmith -Properties *
但我想过滤结果,例如扩展名1234(可能在许多地方,例如extensionAttribute1,OfficePhone,HomePhone,Mobile等)。
我试过了:
get-aduser joesmith -Properties * | where-object {$_ -like "*1234*" }
但是where-object想要$ _。value,而我不知道确切的值。
我应该如何搜索多个属性的值?我希望看到以下结果:
mobile 1234
officephone 12345
othermobile 61234
答案 0 :(得分:4)
要遍历属性的值,您不知道(即OfficePhone,CustomAttribute2,mobile)的名称,您可以使用以下内容:
get-aduser joesmith -Properties * | foreach-object {
foreach ($property in $_.PSObject.Properties) {
if ($property.value -like "*1234*") {
"$($property.name) $($property.value)"
}
}
}