99번 출구는 무엇을 의미하나요?

99번 출구는 무엇을 의미하나요?

99번 출구가 무엇인지, 왜 사용되는지, 그 중요한 목적이 무엇인지 알고 싶습니다.

예를 들어, 저는 exit 99.

답변1

코드 99로 종료하는 것은 특정 프로그램의 컨텍스트 내를 제외하고는 의미가 없습니다.

어느 쪽이든 exit셸은 특정 종료 코드(이 경우 99)로 종료됩니다. 자세한 내용은 다음에서 확인할 수 있습니다 help exit.

exit: exit [n]
    Exit the shell.

    Exits the shell with a status of N.  If N is omitted, the exit status
    is that of the last command executed.

답변2

@Chris Down 외에도 특별한 의미를 갖는 쉘용으로 예약된 몇 가지 반환 코드가 있습니다.

RETVAL   Meaning

1        General errors
2        Misusage
127      Command not found

당신은 참조 할 수 있습니다이것자세한 내용은.

답변3

일반적으로 특정 시점에 스크립트를 완료하는 경우:

exit 0

쉘은 다음과 같이 0을 얻습니다.반환 코드. 이 0은 다음을 의미합니다.모든 게 괜찮아.

그러나 프로그램이 특정 오류 조건을 감지하면 0이 아닌 반환 코드로 종료하여 문제가 발생했음을 쉘에 알려야 합니다. 더 구체적으로 지정하고 싶지 않으면 간단히 1을 사용하면 됩니다.

exit 1

그러나 다른 번호를 사용하여 특정 유형의 오류를 셸에 알릴 수 있습니다. 예를 들어, bash자체적으로 127을 반환합니다.프로그램을 찾을 수 없습니다. 따라서 스크립트의 동작을 기록하는 경우 $?마지막으로 실행된 프로그램의 반환 코드를 보유하는 특수 변수의 값을 확인하여 스크립트를 실행한 후 유용한 작업을 수행할 수 있습니다 .

저는 이것을 얼마 전에 조사하다가 FreeBDS에 종료 코드에 관한 매우 유용한 규칙이 있다는 것을 발견했습니다.man 3 sysexits

답변4

일부 프로그래머는 1부터 시작하는 다양한 오류 코드를 제공합니다. 새 버전에서는 새로운 특정 오류 코드가 도입될 수 있습니다. 그렇다면
"기타 모든 오류/지정되지 않은 오류" 에는 어떤 코드를 사용해야 합니까 ? 종료 코드는 255로 잘리므로 "기타 오류"로 99를 선택합니다.

관련 정보