OSX에서 PATH 환경 변수를 영구적으로 설정


143

OSX에서 환경 변수를 영구적으로 설정하는 방법에 대한 몇 가지 답변을 읽었습니다.

먼저 Linux / Unix에서 $ PATH를 영구적으로 설정하는 방법은 무엇입니까? 하지만 오류 메시지가 표시 no such file and directory되어 ~/.bash_profile대신 시도 할 수 있다고 생각 ~/.profile했지만 작동하지 않았습니다.

둘째, 나는이 해결책을 발견 하는 방법 OS X에서의 응용 프로그램에서 사용 된 $ 경로를 설정하는 방법 에 변화를 만들기 위해 조언을,

~ / .MacOSX / environment.plist

그러나 다시 no such file and directory오류 가 발생했습니다.

새 터미널 세션을 열 때마다 반복해서 설정할 필요가 없도록 이러한 변수를 설정하는 방법이 필요합니다.


~ / .profile을 만들어 대부분의 * nix 시스템이 파일을 인식하고 존재하는 경우이를 사용할 수 있습니다. 그래도 재부팅이 필요할 수 있습니다.
trve.fa7ad

~ / .MacOSX / environment.plist는 더 이상 사용되지 않습니다.
Pierre ALBARÈDE

답변:


258

에 추가해야합니다 /etc/paths.

참조 (나에게 효과적 임) : 여기


6
이것은 El Capitan에서 작동하는 유일한 솔루션입니다. .bash_profile및 수정보다 낫습니다 .profile.
IgorGanapolsky

1
주석에서 경로에서 요소를 제거하는 방법을 설명하는 추가 된 참조에 대한 답변을 상향 조정했습니다.
Amudhan

이것은 EL Capitan에서 일했습니다. 모든 터미널을 닫고 새 터미널을 열어 echo $ PATH를 확인하십시오.
Prem Ananth C

답은 5 살이지만 여전히 가장 쉽고 간단한 솔루션입니다. 답변 + 참조 주셔서 감사합니다
Rachit Magon

터미널을 '다시 시작'하는 것을 잊지 마십시오.
Neeraj Singh

27

$PATHmacOS 의 변수에 영향을 줄 수있는 파일이 있음을 발견했습니다 (10.11 El Capitan).

  1. 최고 투표 답변이 말했듯이 vi /etc/paths, 이것은 내 관점에서 권장됩니다.

  2. 또한 잊지 마세요 /etc/paths.d에 영향을 줄 수있는 파일이 들어있는 디렉토리 $PATH, 변수를 설정 git하고 mono-command내 경우 경로를. 당신은 할 수있는 ls -l /etc/paths.d항목을 나열하고 rm /etc/paths.d/path_you_dislike항목을 제거 할 수 있습니다.

  3. "bash"환경 ( Terminal.app예 : 기본값 )을 사용하는 경우 ~/.bash_profile또는을 확인해야합니다 ~/.bashrc. 해당 파일이 아직 없을 수도 있지만이 두 파일은에 영향을줍니다 $PATH.

  4. "zsh"환경 (예 : Oh-My-Zsh )을 ~./zshrc사용하는 경우 ~/.bash*사물 대신 체크 아웃해야합니다 .

그리고 모든 터미널 창을 다시 시작하는 것을 잊지 마십시오echo $PATH . $PATH문자열이 될 것입니다 PATH_SET_IN_3&4:PATH_SET_IN_1:PATH_SET_IN_2.

처음 두 가지 방법 ( /etc/paths/etc/path.d)은 /디렉토리에 있으며 컴퓨터의 모든 계정에 영향을 미치고 마지막 두 가지 방법 ( ~/.bash*또는 ~/.zsh*)은 계정 설정에만 영향을주는 ~/디렉토리 (일명, /Users/yourusername/)에 있습니다.

더 읽기 : Mac OS X : $ PATH 변수 설정 / 변경-nixCraft


2
어떤 경우에는 .bash_profile을 편집하는 것이 좋습니다. 컴퓨터에 두 개의 사용자 계정이있는 경우 ~ / dev / scripts와 같은 스크립트 만 추가 할 수 있습니다.
PeteW

내가 알지 못하는 것은 bash 대신 zsh를 사용하고 있다는 것입니다. 감사!
암 사자

11

이것을 추가 할 수도 있습니다

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

에 경로를 ~/.bash_profile지정한 다음 ~/.bashrcPATH에 경로를 더 추가 할 수있는 위치 를 만듭니다 . 예를 들어.

export PATH=$PATH:.

감사합니다. 이전 솔루션을 사용했지만이 방법을 적용하면 DYLD_LIBRARY_PATH 변수를 영구적으로 설정할 수도 있습니까?
patti_jane

그렇습니다 당신은 할 수 있어야합니다. 변경 사항을 보려면 터미널을 닫았다가 다시 열거 나. ~/.bashrc
omoman

위의 코드를에 추가 한 . ~/.bash_profile다음 터미널과 유형을 다시 열었 . ~/.bashrc지만 해당 파일이나 디렉토리가 표시되지 않습니까?
patti_jane

작성해야합니다. 위의 행은 .bash_profile로드가 .bashrc있으면 로드하도록 지시 합니다. 그런 다음 빈 .bashrc칸에 원하는 것을 추가 할 수 있습니다.
omoman

고마워요! 나는 너무 많이 묻는다는 것을 알고 있지만 어떻게 작성하는 방법이 제대로 명시된 링크를 알고 .bashrc있습니까? 나는 좋은 것을 찾을 수 없었다.
patti_jane

8

다음 파일 중 하나를 열 수 있습니다.

/etc/profile
~/.bash_profile
~/.bash_login   (if .bash_profile does not exist)
~/.profile      (if .bash_login does not exist)

그리고 추가하십시오 :

export PATH="$PATH:your/new/path/here"

7

MacOS에서 PATH 환경 변수에 새 경로를 추가하려면 /etc/paths.d디렉토리 아래에 새 파일을 만들고 파일에 설정할 쓰기 경로를 추가하십시오. 터미널을 다시 시작하십시오. echo $PATH프롬프트에서 확인하여 경로가 환경 변수에 추가되었는지 확인할 수 있습니다 .

예를 들어 /usr/local/sbin, PATH변수에 새 경로 를 추가 하려면 다음을 수행 하십시오.

cd /etc/paths.d
sudo vi newfile

에 경로를 추가 newfile하고 저장하십시오.

터미널을 다시 시작하고 입력 echo $PATH하여 확인하십시오


이 답변이 왜 다운되었는지 확실하지 않습니다. 경로 변수를 구성하는 합리적이고 건전한 방법 인 것 같습니다. 모든 비표준 경로 변수에 대해 개별 파일을 작성하기 위해 paths.d를 사용했습니다.
p_q

1

첫 번째 방법을 시도하고 참조 페이지를 통과하여 경로 설정을 실행했지만 경로를 에코 할 때 경로를 지정하지 않았습니다.


1
터미널을 닫고 다시 시작했거나 source새 환경을로드하기 위해 전화 를 했습니까 ?
Dom

yaa..restarted terminal .. 그러나 PATH 변수가 다시 존재하지 않습니다
IgnitedMind

껍질이 뭐야? ps -p $$로 확인하십시오. bash가 아닌 경우 시작 파일의 이름이 다릅니다.
Pierre ALBARÈDE

0

Mac에서 경로를 설정하기 위해 두 가지 방법을 따를 수 있습니다.

  1. 변수 이름에 대한 파일을 작성하고 /etc/paths.d 아래에 경로를 붙여넣고 파일을 profile_bashrc에 소스하십시오.
  2. 경로 변수를 다음 ~/.profile_bashrc으로 내보내기

    VARIABLE_NAME 내보내기 = $ (PATH_VALUE)

그리고 경로를 소싱하십시오. 간단하고 안정적입니다.

당신은에 path variable의해 Mac terminal또는 linux또한 설정할 수 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.