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를 선택합니다.