如何将布尔结果放入Powershell中的变量?

时间:2014-06-27 15:40:34

标签: powershell

如果我有一个带有数字的变量$ count,是否有一个单行将变量设置为true或false,具体取决于$ count = 1?

我以为

$result = ($count -eq 1)

会这样做,但我最终会得到" 1"或存储在其中的null(取决于它是否为1)。

知道我做错了吗?

编辑:我的错误 - 我实际上并没有" 1"在那个变量中。我有一个看起来的ArrayList,就像它是数字1.关闭它。

完整代码:

get-acl C:\Windows\System32\drivers\etc | select -expand access | where {$_.IdentityReference -eq "SomeACL"} | measure | select -expand count -OutVariable aclCount
$aclFound = ($aclCount –eq 1)
$TodayDate = Get-Date -Format "dd/MM/yyyy hh:mm:ss"
Add-Content f:\myfile.log "$TodayDate $aclFound "

通过在第2行的$ aclCount之后放置一个[0]来修复它。 (显然那里的ACL是我正在检查的那个)

2 个答案:

答案 0 :(得分:0)

您始终可以使用If / Then / Else来执行此操作。

If($Count -eq 1){$result = $true}else{$result = $false}

答案 1 :(得分:0)

无法重现。

PS C:\> $count = 3
PS C:\> $result = ($count -eq 1)
PS C:\> $result
False
PS C:\> $result.GetType().Name
Boolean
相关问题