Ask On PATH
환경 변수와 쉘, 스포트라이트 또는 파인더를 통해 시작된 응용 프로그램 에 대해 환경 변수를 설정하는 방법 에 대한 많은 질문이 있습니다 (일반적인 질문 : Finder 실행 응용 프로그램에 대한 PATH 설정 방법 또는 PATH 환경 변수 변경 방법). .. ).
대답은 sh
시작 스크립트 에서 /etc/paths
까지 /etc/launchd.conf
입니다. 다음 은 Mac OS X Mountain Lion 10.8.2의 모든 앱 에 대한 통합 설정에 PATH
대한 답변입니다 .
답변
다른 옵션으로 많은 시험을 마친 후 결론을 내립니다.
쉘 스크립트, Finder 및 Spotlight와 같은 다른 방법으로 시작된 애플리케이션 을 위한 통합 된 방법 이 PATH
있습니까? 예, 아니오 :
- 아니요 :
PATH
셸 시작 스크립트 (예 :)의 설정 은 셸에서 시작한.bashrc
앱에서만 작동합니다. - 아니오 :
PATH
현재launchd
프로세스를 통한 설정launchctl setenv PATH <...>
이 전혀 작동하지 않습니다. - 예 : 설정
PATH
에서/etc/launchd.conf
(시스템을 다시 시작) 적절한 것PATH
스포트 라이트, 도크 및 찾기 및 이후 (로컬) 쉘에 의해 실행 된 응용 프로그램에서 볼 수 있습니다. - 아니오 : 원격으로 호출 된 쉘은 환경을 상속 하지 않습니다 . ( … ssh를 통한 원격 쉘이 환경을 상속하지 않는 이유를 참조하십시오 . )
쉘 설정에 대한 참고 사항 :
-
의 정확한 기능을 위해 지역 껍질이 중요하다 off 스위치 의 사용
/usr/libexec/path_helper
의 기본 경로가 있기 때문에,/etc/paths
에서 경로의 순서를 변경할 수 있습니다PATH
. ** -
원격 쉘 을 수용하려면
launchd
환경을 쉘로 다시 가져와야합니다 . 당신의 다음과 같은 것을 사용하십시오.bashrc
:
# the vexatious path stuff
eval $(launchctl export)
전체 문제의 불행한 결과는 다음과 같습니다.
- 이러한 통합 설정을 사용자별로 할 수있는 방법은 없습니다. (
~/.launchd.conf
작동하지 않습니다.) - 홈 디렉토리 확장 등과 같은 기술을 사용하여 다른 소스에서 PATH를 구성하는 쉬운 방법은 없습니다.
답변
이전 답변 에서 확장 하여 경로를 변경 /etc/launchd.conf
하려면 다음을 수행해야합니다.
-
관리자 권한이 있는지 확인하십시오.
-
다음 내용으로 새 텍스트 파일을 작성하고 필요에 맞게 수정하십시오.
setenv PATH /usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/Users/YourUserName/bin
-
홈 디렉토리에 로 저장하십시오
launchd.conf
. -
Terminal.app (또는 선호하는 대체품)을 열고 다음을 입력하십시오.
sudo mv ~/launchd.conf /etc
sudo
명령 의 이전 사용법에 따라 “작업을주의해서 수행하십시오”라는 메시지가 표시되지만 암호를 입력해야합니다./etc
예를 들어 TextEdit에서 파일을 저장할 때 직접 액세스 할 수없는 디렉토리로 파일을 이동하면됩니다 .sudo
( “Super User DO”의 줄임말)는 해당 디렉토리에 쓰기 위해 관리자 권한이 필요하기 때문에 사용됩니다. -
컴퓨터를 재부팅하십시오.
그리고 당신은 모든 준비가되어 있어야합니다. 행운을 빕니다!
답변
당신은 줄 수 https://github.com/ersiner/osx-env-sync 시도.
단일 소스 에서 명령 행 및 GUI 앱 을 모두 처리 합니다 . 또한 최신 버전의 OS X (Yosemite)에서 작동합니다.