Java / Grails / Maven 버전을 변경해야하는 여러 프로젝트가 있습니다. 변경을 수행하는 일부 스크립트로이를 처리하려고합니다. 예를 들면 다음과 같습니다.
#!/bin/sh
export JAVA_HOME=/cygdrive/c/dev/Java/jdk1.5.0_22
export PATH=$JAVA_HOME/bin:$PATH
export GRAILS_HOME=/cygdrive/c/dev/grails-1.0.3
export PATH=$GRAILS_HOME/bin:$PATH
export MAVEN_HOME=/cygdrive/c/dev/apache-maven-2.0.11
export PATH=$MAVEN_HOME/bin:$PATH
which java
which grails
which mvn
이것이 실행되면 스크립트 컨텍스트 내에서 PATH가 성공적으로 변경되지만 스크립트가 종료되고 변경이 수행되지 않습니다.
현재 작업중인 쉘의 PATH를 변경하는 방법으로 스크립트를 실행하려면 어떻게해야합니까?
Cygwin을 사용하고 있습니다.
source
에 대해서만 작동합니다bash
. 의 출력ksh
:/bin/ksh: source: not found
용sh
:sh: 0: source: not found
. 이 껍질에 대해서는 아래의 대답을 고려해야합니다.