有人能告訴我爲什麼 - 或者不行。如果我運行代碼,第一個輸出是管理員,它返回true,但是當它到達kahuna帳戶時,它仍然返回false不正確。powershell -Or operator not working
(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,True,True,True,True',因爲在轉換爲'[bool]'時不會在'$ true'中出現空字符串。所以,你的邏輯表達式相當於'($ User -match「administrator」) - 或$ true',它應該總是返回'$ true'。 – PetSerAl