쉘 스크립트 (예를 들어 tcsh) 안에서
setenv JAVA_HOME /usr/local/java
이렇게 해놓고 실행하면
쉘 스크립트가 실행하는 동안에만 유효하고
스크립트 실행이 끝나면 JAVA_HOME 은 undefined 상태잖아요
그런데 만약에 스크립트 실행이 끝나고 나서도 유효하게 하려면 어떤 명령어를 쓰면 되죠?
쉘 스크립트를 실행하는 방법의 문제인것 같습니다. 쉘 스크립트를 실행하는 방법은 다음과 같은 방법이 있습니다.
# . a.sh # source a.sh
# sh a.sh # chmod 755 a.sh; ./a.sh
. script.sh
처럼 현재 쉘 환경에서 실행하도록 하면 됩니다. "source"도 "."와 같은 일을 합니다만 bash 확장이고 표준은 아닙니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
쉘 스크립트를
쉘 스크립트를 실행하는 방법의 문제인것 같습니다.
쉘 스크립트를 실행하는 방법은 다음과 같은 방법이 있습니다.
위에 언급한 첫번째 방법을 사용하면 변수가 유지됩니다.
하지만 아래의 방법은 변수가 유지되지 않습니다.(bash기준으로 설명드렸습니다.)
.
처럼 현재 쉘 환경에서 실행하도록 하면 됩니다. "source"도 "."와 같은 일을 합니다만 bash 확장이고 표준은 아닙니다.
댓글 달기