-xe 매개 변수를 / bin / bash에 전달하는 것은 무엇입니까?


59

제목이 정확히 말한 것. 다음 유스 케이스에서 -xe가 무엇을하는지 알 수있는 적절한 문서를 찾는 것은 운이 좋지 않습니다.

#!/bin/bash -xe

이러한 매개 변수는 무엇을하고 어디에 기록되어 있습니까?


BASH 바이너리로 전달되는 매개 변수에 대해 이야기하고 있습니까, 아니면 BASH 스크립팅 언어 내에서 함수와 매개 변수에 대해 이야기하고 있습니까?
— Richard Keller

다음과 같이 BASH 바이너리로 전달되는 매개 변수를 참조하십시오. #! / bin / bash -xe
— 상상의

답변:


56

매뉴얼 페이지를 읽으면 섹션 bash맨 위에 다음이 OPTIONS있습니다.

 모든 단일 문자 셸 옵션은
 set builtin 명령에 대한 설명은 다음과 같은 경우 옵션으로 사용할 수 있습니다.
 쉘이 호출됩니다. 또한 bash는 다음 옵션을 해석합니다.
 호출되면 ...

set맨 페이지 뒷부분에서이 명령에 대한 설명서를 읽으면 다음을 찾을 수 있습니다.

 -e 파이프 라인 인 경우 즉시 종료합니다.
 괄호로 묶인 서브 쉘 명령,
 또는 명령 목록의 일부로 실행되는 명령 중 하나
 중괄호 (위의 SHELL GRAMMAR 참조)는 0이 아닌 상태로 종료됩니다. 

 -x 각 간단한 명령을 확장 한 후 명령
 명령, 선택 명령 또는 명령, 표시를위한 산술
 PS4의 확장 된 값, 명령 및
 확장 된 인수 또는 관련 단어 목록.

다시 말해, -e어떤 것이 오류를 반환 할 때마다 쉘이 즉시 종료되도록하고 (이것은 쉘 스크립트에서 페일 세이프 메커니즘으로 자주 사용됨), -x스크립트의 상세한 실행을 가능하게하여 무슨 일이 일어나고 있는지 확인할 수 있습니다.


10

BASH 인수에 대한 설명을 보려면 콘솔에 다음을 입력하십시오.

bash -c "help set"

질문에 대답하려면 :

-e 명령이 0이 아닌 상태로 종료되면 즉시 종료하십시오.

-x 명령과 인수가 실행될 때 인쇄합니다.


4

로부터 맨 :

set builtin 명령 설명에 설명 된 모든 단일 문자 쉘 옵션은 쉘을 호출 할 때 옵션으로 사용할 수 있습니다.

set 내장을 살펴보십시오 .


2

-x set -e set -...을 설정하는 것을 생각하고 있습니까? 달리기 help set만하면됩니다.


1
나는 다음과 같은 매개 변수를 사용하려고 생각하고 있습니다 : #! / bin / bash -xe
— 상상의

0

-x 및 -e와 같이 bash에 전달되는 매개 변수에 대한 설명서를 읽는 가장 좋은 곳은 어디입니까? 나는 사람 1 bash를 시도했지만 거기에서 다루지 않는 것 같습니다.

basj 맨 페이지의 OPTIONS 섹션을 읽으십시오.


0

Bash 언어에 대한 원 스톱 문서로 우수한 Bash 참조 매뉴얼 을 사용 합니다. 맨 페이지보다 더 유용하다는 것을 알았습니다. 관련 섹션 (-e, -x 스위치에 대한 설명은 여기에서 찾을 수 있습니다. set builtin

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.