Short Commands/Linux
'$?'란 (명령어 정상 작동 여부 확인하는 법) (리눅스 터미널 명령어)
quokkalover
2021. 7. 19. 11:21
$?
는 직전 process의 code를 return 한다.
여기서 말하는 code란 직전 명령의 결과값이 아니라, 상태값을 나타내는 code를 의미.
- 0 = no error happened.
다른 값
= unusual condition이 발생했다는 것을 의미함.- 128을 넘기는 경우는 특정 signal을 의미한다.
- 예를 들어서 147 이라면, program이 signal 19를 받았다는 것을 의미 (19=
SIGSTOP
)
예를 들어보면
newfolder라는 디렉토리가 없는 경로에서 아래 커맨드를 실행해보면 아래와 같은 결과가 나온다.
mkdir newfolder
echo $?
#성공했으니까
0
mkdir newfolder
echo $?
#실패했으니까
#1