"exec" 명령에서 종료 코드 가져오기

"exec" 명령에서 종료 코드 가져오기

명령에서 종료 코드를 얻는 방법은 무엇입니까 exec?

다음은 샘플 코드입니다. 다른 명령에서는 작동하지만 exec.

exec "somethings"
if [ $? == 0 ];
then
    echo -e "Done\n"
    exit 0
else
    echo -e "error\n"
    exit 1
fi

답변1

이는 동일한 문제가 발생했을 때 도움이 되었습니다.

exec를 성공적으로 사용하면 exec 프로그램이 쉘을 대체합니다. exec 프로그램의 종료 상태는 실행 중인 쉘의 상위 프로세스로 다시 전송됩니다.

exec 다음 행이 exec의 종료 상태를 설명할 수 있는 유일한 방법은 exec 호출이 실패했다는 것입니다. 일반적으로 요청된 명령이 존재하지 않거나 파일이 실행 가능하지 않은 경우에만 발생합니다. 옵션 해결 문제는 exec 프로그램이 시작된 후 해결되므로 여기에는 포함되지 않습니다.

쉘이 프로그램의 종료 코드를 해석하도록 하려면 exec를 사용하여 그렇게 할 수 없습니다. 셸에서 프로그램을 실행하면 완료되면 종료 상태를 볼 수 있습니다.

여기를 참고하세요

관련 정보