개체 속성을 통해 반복하고 값이 True
인 PowerShell 스크립트 만 출력하려고합니다. 나는이 필요하다고 생각개체의 속성을 반복하는 방법
UserId : 00546000000m3vCAAQ UserPermissionsOfflineUser : True UserPermissionsSupportUser : True
: 나는 사용자 ID로 구성 할 수있는 출력과 다음과 같이 사실 만 라이센스를 원하는
UserId : 00546000000m3vCAAQ UserPermissionsOfflineUser : True UserPermissionsMobileUser : False UserPermissionsSupportUser : True UserPermissionsWebUser : False
:
내 시작 데이터는이입니다 하나는 각 사용자를 반복하고 다른 루프는 사용자 속성을 반복하고 모든 잘못된 값을 구문 분석합니다.
$resultSet |ForEach-Object {
$trueProperties = $_.psobject.Properties |Where-Object {$_.Value -eq $true} |Select -ExpandProperty Name
$_ |Select -Property @('Id';$trueProperties)
}
선택적 같은 자신의 가치를 기반으로 특성을 따기주의하십시오 :
foreach ($_ in $resultset)
{
$_ |
Select-Object -Property @{ N = 'UserId'; E = { $_.Id } }
#This is where I am getting stuck on the second loop.
#$_.psobject.properties | % { $_.Value }
}
감사합니다. 구문 오류가 수정되었습니다. 저는 Value 대신 $ _. value를 사용합니다. 지금 올바른 출력을 받고 있지만 UserId는 비어 있습니다. – PKonstant
@PKonstant는 'UserId' 속성의 실제 이름입니까? 또는 그것은'Id'입니까? 질문 [ –
]에서 분명하지 않습니다. 'ID'입니다. 나는 그것을 바꿨고 효과가 있었다! 고맙습니다. 나는 당신 스크립트의 일부를 '| -ExpandProperty Name '과'$ _ | Select -Property @ ('Id'; $ trueProperties) '를 선택하십시오. 나는 powershell을 처음 사용하고 있으며 어떤 내용의 문장을 출력하는지 알고 싶습니까? – PKonstant