반응형
PowerShell: 문자열과 일치하지 않는 경우 오류 종료 코드 반환
나는 그것을 발견했습니다.
$(Invoke-Expression hostname) -eq 'mycomputername'
일치하는지 여부와 상관없이 종료 코드는 0이어야 합니다. 이 동작은 Linux와 다릅니다. 즉, 일치하지 않는 경우 오류 코드 1 종료
문자열과 일치하지 않을 경우 오류 종료 코드를 반환할 수 있는 짧은 명령이 PowerShell에 있습니까?
스크립트에서 다음을 사용하여 종료 코드를 변경할 수 있습니다.exit
키워드
정상 종료 시 종료 코드는 0으로 설정됩니다.
미수습자THROW
종료 코드를 1로 설정합니다.
그EXIT
문은 프로세스를 중지하고 종료 코드를 지정된 대로 설정합니다.
당신의 경우에는 이런 일을 할 것입니다.
if ( $(hostname) -eq 'mycomputername')
{
exit 0
}
else
{
exit 1
}
당신은 이런 것을 찾고 있습니까?
C:\>powershell -command "& { if($(Invoke-Expression hostname) -eq 'wrongname'){ exit 0 } else { exit 1 } } "
C:\>echo %errorlevel%
1
C:\>powershell -command "& { if($(Invoke-Expression hostname) -eq 'rightname'){ exit 0 } else { exit 1 } } "
C:\>echo %errorlevel%
0
더 많은 호박을 원한다면,
powershell -command "& { if($(Invoke-Expression hostname) -ne 'wrongname'){ exit 1 } }"
사소한 업데이트를 통해 다음과 같은 작업을 간소화할 수 있습니다.
powershell -command "if($(Invoke-Expression hostname) -ne 'wrongname'){ exit 1 }"
echo Error=%ERRORLEVEL%
언급URL : https://stackoverflow.com/questions/21901377/powershell-return-error-exit-code-if-not-match-a-string
반응형
'programing' 카테고리의 다른 글
오류 jqxhr에 대한 Ajax GET URL (0) | 2023.08.16 |
---|---|
$LastExitCode=0입니다만 $?= PowerShell에서 거짓.stdout으로 stderr을 리디렉션하면 Native CommandError가 발생함 (0) | 2023.08.11 |
터미널을 통해 OS X의 adb에 액세스할 수 없습니다. "명령을 찾을 수 없습니다." (0) | 2023.08.11 |
자바스크립트에서 서버를 ping할 수 있습니까? (0) | 2023.08.11 |
도커가 macOS에서 기본적으로 Linux/amd64 플랫폼을 사용하도록 강제 설정 (0) | 2023.08.11 |