Я пытаюсь запустить скрипт Powershell и отобразить код ошибки и сообщение об ошибке в случае сбоя.Предполагается, что я получу результат в следующем формате:
"FAILED;ErrorCode;ErrorMessage;"
Вот мой сценарий:
param([String]$Cab_Type)
$output
if(!(Test-Connection -Cn 165.100.10.10 -BufferSize 16 -Count 1 -quiet))
{
$output = "FAILED; " + $LASTEXITCODE + ";" + $error[0] + ";"
}
else
{
$output = "PASSED"
}
Write-Host $Cab_Type
Write-Host "<ScriptResult_Start>"
Write-Host $output
Write-Host "<ScriptResult_End>"
Я пытаюсь преднамеренно пропинговать адрес, который, как я знаю, потерпит неудачу.При запуске сценария он возвращает мне сообщение об ошибке, но не код ошибки.
Разве $ LASTEXITCODE не возвращает код ошибки сценария?Даже если мой скрипт сработал, он возвращает только 0 или 1?Есть ли способ получить реальный код ошибки скрипта?