echo $PWD ---> /x에서 스크립트를 시작합니다. 내 스크립트가 현재 디렉터리를 변경하도록 하고 싶습니다. 그래서 내 스크립트에는 +-가 포함되어 있습니다.
cd /y
exit 0
그러나 스크립트가 종료되면 여전히 echo $PWD ---> /x 상태입니다. /y를 추가하고 싶습니다. 왜 작동하지 않나요?
스크립트를 시작하기 위해 해야 할 일은 다음과 같습니다: [myScriptName]
답변1
이는 쉘이 스크립트를 실행하기 위해 다른 쉘을 시작하기 때문입니다. 두 번째 셸은 작업 디렉터리를 변경한 다음 디렉터리를 변경하지 않는 첫 번째 셸로 종료됩니다.
현재 쉘이 스크립트를 실행하도록 하려면 다음을 호출하십시오.
. scriptname
(조심하세요). 물론 꺼내야 합니다 exit 0
.
쉘 함수를 작성할 수도 있습니다. 바라보다 ksh(1)
.