환경 변수에 대한 질문

환경 변수에 대한 질문

Oracle jdk7이 내 centos6에 설치되었습니다. /etc/profile에 다음 줄이 있는 것을 확인했습니다.

#below lines are added for Java
export JAVA_HOME="/usr/java/latest"
## export JAVA_HOME JDK ##
export JAVA_HOME="/usr/java/jdk1.7.0_75"

환경 변수 및 경로에 대한 가정을 테스트하기 위해 위의 모든 줄(내보내기 줄)을 주석 처리했습니다. 나는 그것을 소싱하여 새로운 것을 로드하려고 시도했지만 여전히 /etc/profile위 의 경로를 반환합니다.. /etc/profileecho $JAVA_HOME

그래서 소스가 작동하지 않아서 머신을 다시 시작했습니다. 다시 시작한 후에 echo $JAVA_HOME는 예상된 대로 아무 것도 반환되지 않습니다. ~/.bash_profile자바에는 아무것도 없습니다.

java -version하지만 쉘에서 명령을 실행하면: 여전히 반환됩니다.

[root@localhost ~]# java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)

PATH에서 Java는 어디에 정의되어 있나요? 경로는 다음과 같습니다 ~/.bash_profile. Java 경로가 없습니다.

# 사용자별 환경 및 시작 프로그램

PATH=$PATH:$HOME/bin
export PATH
~
~
~

set- 셸의 PATH 변수에 대해 다음 줄을 반환합니다.

PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

답변1

기본 PATH설정은 에 있습니다 /etc/profile. 사용자는 또는 ( 실행 중인 경우 ) PATH을 편집하여 수정할 수 있지만, 그렇지 않은 경우에는 에 정의된 설정이 그대로 유지됩니다 . 그렇기 때문에 이 라인은~/.profile~/.bash_profile~/.bashrcbashPATH/etc/profile

PATH=$PATH:$HOME/bin

뿐만 아니라

PATH=$HOME/bin

이렇게 하면 원래 값이 PATH유지되고 새 디렉터리가 추가됩니다. 내 시스템의 PATH설정은 다음 /etc/profile과 같습니다.

PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"

행에 매우 유사한 행이 있을 수 있으며,그건그거 어디서 났어 /usr/bin.

관련 정보