바보 배 쉬. - 탈퇴 와 탈퇴 상태.
C 언어 를 배 운 적 이 있 습 니 다. 우 리 는 exit 로 상 태 를 되 돌려 줍 니 다. Bash 도 마찬가지 입 니 다. 그러면 부모 프로 세 스 가 하위 프로 세 스 를 사용 할 수 있 는 지 여 부 를 판단 할 수 있 습 니 다.좋 은 습관 은 스 크 립 트 가 끝 날 때 상태 로 돌아 가 는 것 이다.0 을 성공 적 으로 되 돌려 주 었 습 니 다. 0 값 이 아 닌 오류 코드 입 니 다.
스 크 립 트 가 인자 가 없 는 exit 로 끝 날 때 스 크 립 트 의 종료 상 태 는 스 크 립 트 의 마지막 실행 명령 에 의 해 결 정 됩 니 다.
$?마지막 명령 을 실행 하 는 종료 코드 를 읽 습 니 다. 함수 가 돌아 오 면 $?함수 가 마지막 으로 실 행 된 명령 의 종료 코드 를 드 립 니 다.
함수 가 값 을 되 돌려 주 는 방법 은 Bash 의 방법 입 니 다.
간단 한 예 를 보 여 주세요.
#!/bin/bash
ls -l
echo $?
lskdf
echo $?
! true
[yuyzhu@vm10010 experiment]$sh testExit.sh
total 8
-rwxr-xr-x 1 yuyzhu yuyzhu 8 Oct 12 2011 input
-rwxr-xr-x 1 yuyzhu yuyzhu 9 Oct 12 2011 input1
-rwxr-xr-x 1 yuyzhu yuyzhu 63 Feb 25 23:57 shellUntil
-rwxr-xr-x 1 yuyzhu yuyzhu 64 Aug 23 2013 SReturn
-rwxr-xr-x 1 yuyzhu yuyzhu 44 Aug 29 2011 testEnvSettings
-rw-rw-r-- 1 yuyzhu yuyzhu 49 Mar 2 20:55 testExit.sh
-rwxr-xr-x 1 yuyzhu yuyzhu 389 Oct 9 2011 testpackateutils
-rwxr-xr-x 1 yuyzhu yuyzhu 96 Oct 12 2011 testPatter
0
testExit.sh: line 5: lskdf: command not found
127
[yuyzhu@vm10010 experiment]$echo $?
1
'ls - l' 이 올 바 르 게 실행 되 기 때문에 출력 상 태 는 0 입 니 다. 'lskdf' 명령 이 존재 하지 않 습 니 다. 반환 상 태 는 127 입 니 다. 마지막 으로!논리 조작, test 명령 의 결 과 를 반전 시 킵 니 다. 이번 에는 출시 상태 에 영향 을 줍 니 다. 그래서 스 크 립 트 를 실행 한 후 $?의 값 은 1 이다.
스 크 립 트 의 상태 코드 는 사용자 정의 로 주석 에 쓸 수 있 지만 특정한 종료 코드 는 예 정 된 의 미 를 가지 고 충돌 을 피 할 수 있 습 니 다.
종료 코드 (exit status, 또는 exit code) 의 약속:
0 은 성공 을 나타 낸다 (제로 - 성공)
0 이 아니면 실패 (Non - Zero) - Failure)
2. 용법 이 부당 함 을 나타 낸다 (Incorrect Usage)
127 명령 을 찾 을 수 없 음 (명령 을 찾 을 수 없 음)
126 은 실행 가능 한 것 이 아니 라 는 뜻 (Not an executable)
>=128 신호 발생
man exit 를 통 해 exit 의 약속 을 볼 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Unity3D 시작하기(rolling ball) - 학습 노트만약 이 방법이 성공하지 못하면 각 구성 요소를 분류하여 다운로드할 수 있습니다. 항목은 3D를 선택하고 가져온 리소스는 None으로 선택할 수 있습니다. Scene: 각 게임마다 몇 개의 장면으로 구성되어 있으며,...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.