프로세스 종료 상태 코드란

종료 코드의 의미

0 : 성공
1 ~ 255 : 실패(프로그램/상황마다 의미가 다를 수 있음)

자주 보는 케이스
1 : 일반적인 실패
2 : 잘못된 사용법/옵션
126 : 파일은 있지만 실행 권한 없음
127 : 명령을 찾을 수 없음
128 + N : 시그널 N에 의해 종료
	- SIGINT(2) -> 130
	- SIGKILL(9) -> 137 

종료 코드 확인 방법

1. 바로 직전에 실행한 명령의 종료 코드
-----------------------------
echo $?

EX)
ls not_exist
echo $?
=>
보통 2가 나옴(리눅스 ls는 "파일/디렉토리 없음"을 2로 주는 편)

2. 종료 코드 직접 지정하기(스크립트)
----------------------------
exit 0  // 성공으로 종료
exit 1  // 실패로 종료
exit 42 // 임의 코드

3. 조건문에서 활용
--------------
command
if [ $? -eq 0 ]; then // -eq 는 "[]" 테스트(조건식)에서 숫자 같음을 비교
		echo "성공"
else
		echo "실패"
fi
=> 더 간단히
if command; then
		ehco "성공"
else
		echo "실패"
fi