これは、enabled
プロパティが文字列False
ではないためです。しかし、表示されるときに文字列としてフォーマットされるブール値です。たとえば、$false
を評価すると、文字列False
のように表示されます。あなたは動的にすることができ、比較の順序を切り替えることで、代わりに
:しかし、あなたは$False | Get-Member
を評価する場合は、TypeName: System.Boolean
すると、あなたが$False
はなく"False"
$InactiveComputers = Search-ADAccount -AccountInactive -ComputersOnly -TimeSpan 359.00:00:00 -Searchbase "OU=Disabled Computers,DC=mydomain,DC=net"
#Displaying that enabled property is System.Boolean
$InactiveComputers[0].enabled | Get-Member
$InactiveComputers | Where {$_.enabled -eq $False}
編集と比較する必要があることを意味していることがわかります文字列に$False
をキャストします。これは、 `.enabled`プロパティは` false`をに等しいことを確認することができます"False" -eq $False
と
$InactiveComputers = Search-ADAccount -AccountInactive -ComputersOnly -TimeSpan 359.00:00:00 -Searchbase "OU=Disabled Computers,DC=mydomain,DC=net"
$InactiveComputers | Where {"False" -eq $_.enabled}
$False -eq "False"
の違いでしょうか? – 4c74356b41はいプロパティはfalseと等しい – Chrismo16