Неправильный вывод в PowerShell

$status_message = Get-HPiLoFirmwareversion -Server 172.16.2.210 -Username administrator -Password xxxx -DisableCertificateAuthentication -WarningAction SilentlyContinue |
                  Select-Object -Property STATUS_MESSAGE

if ($status_message -eq '@{STATUS_MESSAGE=OK}') {
    Write-Host "Status OK"
    exit 0
} else {
    Write-Host "error"
    exit 0
}

Write-Host $status_message

но я получаю следующий вывод:

@ {STATUS_MESSAGE = OK}

вместо просто "ОК".

$status_message = Get-HPiLoFirmwareversion -Server 172.16.2.210 -Username administrator -Password xxxxx -DisableCertificateAuthentication -WarningAction SilentlyContinue

Write-Host $status_message

дает:

IP: 172.16.2.210
Хозяин: 
STATUS_TYPE: ОК
STATUS_MESSAGE: ОК
FIRMWARE_DATE: 23 сентября 2016 г.
FIRMWARE_VERSION: 2,50
LICENSE_TYPE: iLO Advanced
MANAGEMENT_PROCESSOR: iLO4

Похоже, что командлет HP iLO, возможно, использует Write-Host вывести их сообщение об ошибке, и это может быть проблемой.

0 ответов

Другие вопросы по тегам