내가 읽고있다배쉬 매뉴얼-s
전화할 때 옵션을 이해하려면 bash
. 첫 번째 문장은 다음과 같습니다.
-s 이 옵션이 있거나 옵션 처리 후 남은 인수가 없으면 표준 입력에서 명령을 읽습니다.
"옵션 처리 후 매개변수가 유지되지 않음"은 무엇을 의미합니까? 결국 모든 옵션이 처리되고 처리할 옵션/인수가 더 이상 없게 됩니다. 그렇죠?
사용하는 것과 사용하지 않는 것의 차이점을 알아야 합니다 bash -s
(예: ).bash
답변1
다음은 매개변수 와 script
다음을 사용하여 실행 됩니다 .arg1
arg2
bash script arg1 arg2
의 경우 -s
매우 다른 일이 발생합니다.인터렉티브쉘이 시작되면 bash에 대한 나머지 인수는 명령으로 해석되지 않고 위치 인수로만 해석됩니다.
$ bash -s arg1 arg2
$ echo "0=$0 1=$1 2=$2"
0=bash 1=arg1 2=arg2
위에서는 echo "0=$0 1=$1 2=$2"
새 셸의 대화형 프롬프트에서 수동으로 입력되었습니다.