誰かが私にその理由を教えてもらえますか?私がコードを実行すると、最初の出力はtrueを返す管理者ですが、それがkahunaアカウントに到達するとfalseを返します。私はここでpowershellまたは演算子が動作しない
、TRUE、FALSE、偽、偽、偽
を取得
(Get-LocalUser).Name | Out-File C:\localusers.txt
ForEach ($User in Get-Content C:\localusers.txt)
{
If ($User -match "administrator" -or "kahuna")
{
Write-Host True
}
Else
{
Write-Host False
}
}
が順にリストされているアカウントは、彼らが
管理者、DefaultAccount、ゲストに表示されています、Kahuna、PCUser
本当に「真、偽、偽、偽、偽」を取得していますか? '[真]、真、真、真、真 'と期待します。空の文字列の結果は' $ true'に変換され、 '[bool]'に変換されるからです。ですから、 '($ User -match" administrator ") - または$ true'に相当する論理式です。常に' $ true'を返さなければなりません。 – PetSerAl