종료 시 다른 반환 코드로 Bash 스크립트 반환 만들기

Jonglyo Si Daleun Banhwan Kodeulo Bash Seukeulibteu Banhwan Mandeulgi



종료 코드는 스크립트가 성공적으로 실행되었음을 나타내는 정수입니다. 이러한 코드는 반환 코드 또는 종료 상태라고도 합니다. 종료 코드는 일반적으로 성공적인 실행 시 0을 반환하고 실패한 실행 시 0이 아닌 값을 반환합니다.

그러나 많은 Bash 스크립트 사용자는 종료 시 다른 반환 코드로 반환하기를 원하지만 오류가 발생합니다. 이 자습서에서는 종료 시 다른 반환 코드로 Bash 스크립트를 반환하는 다양한 접근 방식을 설명합니다.

종료 시 다른 반환 코드와 함께 Bash 스크립트 반환

메서드로 이동하기 전에 특정 의미를 가진 종료 코드를 살펴보겠습니다.







종료 코드 설명
0 스크립트가 성공적으로 실행되었습니다.
1 스크립트가 일반 오류와 함께 실행됩니다.
스크립트에서 일부 내장 명령을 잘못 사용했습니다.
126 호출되어 실행할 수 없는 명령에 대한 오류를 표시합니다.
127 스크립트에 명령이 없습니다.
128 범위를 벗어난 종료 코드 또는 치명적인 오류 신호를 표시합니다.
130 CTRL+C는 스크립트를 종료합니다.
255 스크립트의 일반적인 실패 오류 코드입니다.

종료 시 반환 코드를 얻는 방법?

'echo $?'만 쓰면 됩니다. 반환 코드를 가져오는 명령입니다. 예를 들어 다음 Bash 스크립트를 사용하여 두 숫자를 비교하려고 합니다.





터미널에서 스크립트를 실행한 후 'echo $?'를 실행합니다. 종료 시 반환 코드를 얻으려면:





. / 비교.sh

에코 $?



'comparison.sh'가 성공적으로 실행됩니다. 이것이 터미널이 리턴 코드로 0을 표시하는 이유입니다. 마찬가지로 스크립트가 성공적으로 실행되면 0이 아닌 값을 얻게 됩니다. 예를 들어 스크립트에서 ls 명령 대신 Ls를 사용하면 반환 코드로 0이 아닌 값을 얻을 수 있습니다.

이전 이미지에서 볼 수 있듯이 스크립트에 잘못된 명령이 포함되어 있기 때문에 터미널은 반환 코드로 127을 표시합니다.

다른 종료 코드로 Bash 스크립트 반환 만들기

스크립트에서 종료 코드를 수동으로 설정할 수 있습니다. 예를 들어 종료 코드로 255를 얻으려면 다음 스크립트를 사용하십시오.

이제 스크립트를 실행한 다음 'echo $?'를 실행합니다. 255를 반환 코드로 가져오는 명령:

. / 비교.sh

에코 $?

결론

이것은 Linux에서 Bash 스크립트를 실행한 후 얻을 수 있는 종료 코드에 관한 것입니다. 종료 코드는 사용자가 Bash 스크립트의 상태를 식별하는 데 도움이 됩니다. 다른 반환 코드를 수동으로 설정하고 사용할 수도 있습니다. 따라서 스크립트가 성공적으로 실행되더라도 0 대신 0이 아닌 종료 코드를 얻을 수 있습니다. Bash 스크립트에 대해 더 알고 싶다면 공식 웹사이트를 검색하십시오.