스크립트(ksh)를 사용하여 현재 디렉터리 변경

스크립트(ksh)를 사용하여 현재 디렉터리 변경

echo $PWD ---> /x에서 스크립트를 시작합니다. 내 스크립트가 현재 디렉터리를 변경하도록 하고 싶습니다. 그래서 내 스크립트에는 +-가 포함되어 있습니다.

cd /y
exit 0

그러나 스크립트가 종료되면 여전히 echo $PWD ---> /x 상태입니다. /y를 추가하고 싶습니다. 왜 작동하지 않나요?

스크립트를 시작하기 위해 해야 할 일은 다음과 같습니다: [myScriptName]

답변1

이는 쉘이 스크립트를 실행하기 위해 다른 쉘을 시작하기 때문입니다. 두 번째 셸은 작업 디렉터리를 변경한 다음 디렉터리를 변경하지 않는 첫 번째 셸로 종료됩니다.

현재 쉘이 스크립트를 실행하도록 하려면 다음을 호출하십시오.

. scriptname

(조심하세요). 물론 꺼내야 합니다 exit 0.

쉘 함수를 작성할 수도 있습니다. 바라보다 ksh(1).

관련 정보