2013-02-25 14 views
-1

Oracle 인코딩 구성을 위해 환경 변수 $ NLS_LANG를 변경해야합니다. 다음 단계를 수행했습니다.Solaris에서 환경 변수 유지

  1. /etc/profile 파일을 엽니 다. 파일

내가 노력에

  • 추가 "수출 NLS_LANG = AMERICAN_AMERICA.WE8ISO8859P9"라인;

    에코 $ NLS_LANG

    그러나 콘솔을 실행 한 후, 기존의 변수를 인쇄 :

    합니다./etc/profile

    콘솔이 변수의 마지막으로 할당 된 값을 올바르게 인쇄했습니다.

    새 콘솔을 열고 echo 명령을 실행하면 콘솔에서 $ NLS_LANG 변수의 이전 값을 계속 인쇄합니다.

    Solaris에서 환경 변수를 유지하는 올바른 방법은 무엇입니까?
    감사합니다 ...

    ps : Solaris 버전은 -> 5.10입니다.

  • +1

    보다 구체적인 파일을 내보내는 경우가 아니라면 로그 아웃하고 다시 로그인하면됩니다. – cnicutar

    +0

    어떤 셸을 사용하고 있습니까? 솔라리스 10 (SunOS 5.10)에서/bin/sh이면'export VARIABLE = value'는 지원되지 않습니다.'VARIABLE = value; 변수를 수출한다. export'VARIABLE = value' 구문은 ksh, bash 그리고 (이후 ksh93)/bin/sh에서 Solaris 11 및 이후 버전에서 작동합니다. – alanc

    +0

    @alanc ksh를 사용하고 있습니다. –

    답변

    1

    .profile은 로그인 쉘에서만 읽습니다. 따라서 로그인 셸을 강제 실행하려면 (또는 @cnicutar suggest, logout/login처럼) -으로 쉘을 시작해야합니다.

    대신 Korn 셸의 경우 "일반"(대화 형) 호출에서 읽는 파일에 할당을 지정할 수 있습니다 (예 : .kshrc).

    0

    사용자가 로그인 할 때 /etc/profile의 환경 변수가로드됩니다. 따라서 로그 아웃하지 않고 다시 로그인하면 $NLS_LANG이로드되지 않습니다. 당신은 추가해야합니다

    NLS_LANG="new value" 
    export $NLS_LANG 
    

    직접

    export NLS_LANG="new value" 
    
    0

    :

    지금 로그온하지 않으려면

    은, 당신이 할 수있는 시스템이 새로운 값을로드 할 EXPORT를 사용하다 .profile 파일을 홈 디렉토리로 내 보냅니다. /home/folder/.profile 파일에 export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P9을 사용하십시오. 이 방법은 로그온 할 때마다 변수가 구성됩니다.