그들은 똑같은 일을한다는 점에서 bash와 동일합니다. 반면에 source
5 자 이상이며 POSIX 전용 쉘이나 Bourne으로 이식 할 수 없지만 .
(점)은 사용하지 않습니다 source
.
맞습니다. 파일을 소싱하면 현재 쉘에서 명령이 실행되고 현재 쉘 환경에 영향을 미칩니다. 소스 파일에 인수를 전달할 수 있으며 bash는 실제로 $PATH
슬래시가 포함되어 있지 않으면 일반 명령처럼 파일 이름을 찾습니다 .
.
vs 의 원래 질문과 관련이 source
없지만 예제에서는
. ./myScript.sh
와 동일하지 않다
source myScript.sh
반면 때문에 .
와 source
기능적으로 동일하며, myScript.sh
과 ./myScript.sh
동일하지 않다. ./myScript.sh
슬래시가 포함되어 있기 때문에 경로로 해석되며 셸은을 사용합니다 ./myScript.sh
. 그러나 myScript.sh
슬래시가 없으므로 쉘이 먼저 $PATH
검색합니다. 에 대한 POSIX 지정 표준 동작입니다 .
. 확장명 (경로 검색 후 현재 작업 디렉토리에서 검색하는 등) 또는 .
/ 의 동작을 변경하는 옵션을 추가 할 수 있지만 대부분의 쉘은 기본적으로이 옵션을 사용합니다 source
.