If / Else 语句使用 Get-WMIObject
If / Else statement using Get-WMIObject
我正在尝试使用“Get-WMIObject”。
如果我 运行 脚本输出为红色文本,而不是根据 if/else 语句应有的绿色文本。此外,在脚本具有 运行 之后,如果我键入 $PredictFailure,它会显示 $PredictFailure 为“False”。
显示正在发生的事情的屏幕截图。
$PredictFailure = Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus | Select-Object PredictFailure
Foreach ($D in $PredictFailure)
{
$PredictFailure = $D.PredictFailure
If ($D.PredictFailure -eq "False")
{Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus -ComputerName $env:computername | Select-Object PSComputerName, Active, PredictFailure, Reason | Format-Table -AutoSize | Out-String | Write-Host -ForegroundColor Green}
Else
{Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus -ComputerName $env:computername | Select-Object PSComputerName, Active, PredictFailure, Reason | Format-Table -AutoSize | Out-String | Write-Host -ForegroundColor Red}
}
您正在与字符串 "False" 进行比较。使用 $FALSE
引用布尔常量 false:
If ($D.PredictFailure -eq $FALSE)
或使用否定
If (-not $D.PredictFailure)
我正在尝试使用“Get-WMIObject”。
如果我 运行 脚本输出为红色文本,而不是根据 if/else 语句应有的绿色文本。此外,在脚本具有 运行 之后,如果我键入 $PredictFailure,它会显示 $PredictFailure 为“False”。
显示正在发生的事情的屏幕截图。
$PredictFailure = Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus | Select-Object PredictFailure
Foreach ($D in $PredictFailure)
{
$PredictFailure = $D.PredictFailure
If ($D.PredictFailure -eq "False")
{Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus -ComputerName $env:computername | Select-Object PSComputerName, Active, PredictFailure, Reason | Format-Table -AutoSize | Out-String | Write-Host -ForegroundColor Green}
Else
{Get-WmiObject -namespace root\wmi –class MSStorageDriver_FailurePredictStatus -ComputerName $env:computername | Select-Object PSComputerName, Active, PredictFailure, Reason | Format-Table -AutoSize | Out-String | Write-Host -ForegroundColor Red}
}
您正在与字符串 "False" 进行比较。使用 $FALSE
引用布尔常量 false:
If ($D.PredictFailure -eq $FALSE)
或使用否定
If (-not $D.PredictFailure)