다음과 같이 스크립트를 실행하는 것의 차이점은 무엇입니까?
./test.sh
다음과 같은 스크립트를 실행하십시오.
. test.sh
?
차이점이 있는지 찾을 수 있는지 확인하기 위해 간단한 두 줄짜리 스크립트를 시도했습니다.
#!/bin/bash
ls
그러나 모두 . test.sh
와 ./test.sh
동일한 정보를 반환했습니다.
test.sh
동일하지 않습니다 ./test.sh
(첫 번째는 호출 PATH
검색), 그래서이다 . test.sh
과 . ./test.sh
같은 방법으로 다른 (이전에는 호출 PATH
검색). 경로 검색을 수행 할 때 많은 셸이 암시 적으로 포함 .
되는 것처럼 보이지만 이 동작은 표준이 아닙니다. 따라서 vs 와 vs 를 비교하는 것이 더 정확합니다 . PATH
.
test.sh
. test.sh
./test.sh
. ./test.sh