tl; dr 버전 : 사용 ~/.zshrc
그리고 man 페이지 를 읽고 차이점을 이해하십시오.
~/.zshrc
, ~/.zshenv
및 ~/.zprofile
.
내 의견에 대해
kev가 준 답변에 첨부 된 내 의견에서 다음 과 같이 말했습니다.
이것은 잘못된 것 같습니다-/ etc / profile은 내가 찾을 수있는 zsh 문서에 나열되어 있지 않습니다.
이는 부분적으로 잘못된 것으로 판명 되었습니다 . 에서 제공 /etc/profile
할 수 있습니다 zsh
. 그러나 이것은 zsh
" sh
또는 ksh
"으로 호출되는 경우에만 발생합니다 . 다음 호환성 모드에서 :
일반적인 zsh 시작 / 종료 스크립트는 실행되지 않습니다. 로그인 쉘 소스 / etc / profile 뒤에 $ HOME / .profile이 있습니다. ENV 환경 변수가 호출시 설정된 경우 $ ENV는 프로필 스크립트 다음에 제공됩니다. ENV의 값은 경로 이름으로 해석되기 전에 매개 변수 확장, 명령 대체 및 산술 확장의 영향을받습니다. [ man zshall, "호환성" ].
ArchWiki zsh을 링크는 말합니다 :
로그인시 Zsh는 다음 파일을 다음 순서로 제공합니다.
/ etc / profile
이 파일은 로그인시 모든 Bourne 호환 쉘에서 제공됩니다.
이 implys /etc/profile
되어 항상 읽을 으로 zsh
로그인 할 때 - 나는 아치 리눅스 프로젝트에 경험이 없어; 위키가 해당 배포판에 맞을 수 있지만 일반적으로 올바르지 않습니다 . zsh 매뉴얼 페이지에 비해 정보 가 정확하지 않으며 OS X의 zsh에 적용되지 않는 것 같습니다 ( $PATH
set in 경로 /etc/profile
가 내 zsh 세션으로 연결되지 않음).
질문을 해결하려면 :
내 $ PATH에 내 rvm, python, node 등을 정확히 어디에 추가해야합니까?
일반적으로, 나는 나의를 내보낼 것 $PATH
에서 ~/.zshrc
, 그러나의 읽기 가진 그것의 가치 zshall의 맨 페이지를, 특히 "시작 / 종료 FILES"절 - ~/.zshrc
에 대해 읽어 상호 작용 또는 필요에 따라하지 않을 수도 있습니다 쉘, - 당신이 원하는 경우 $PATH
에 대한 zsh
사용자가 호출 한 모든 쉘 (둘 다 interactive
및 아님, 둘 다 login
및 아님 등) ~/.zshenv
이 더 나은 옵션입니다.
내가 사용해야하는 특정 파일 (예 : 현재 설치에없는 .zshenv), 현재 사용중인 파일 중 하나가 있습니까, 아니면 중요합니까?
시작시 읽을 수있는 파일이 많고 (링크 된 man
페이지 확인 ) 그 이유가 있습니다. 각 파일에는 특정 위치 (모든 사용자 설정, 사용자 별 설정, 로그인 셸 설정, 모든 셸 설정, 기타).
존재하지 않는 것에 대해 걱정하지 마십시오. ~/.zshenv
필요한 경우 작성하면 읽을 수 있습니다.
.bashrc
하고 .bash_profile
있습니다 하지 읽을 zsh
명시 적으로 그들을 소스하지 않는 한, ~/.zshrc
또는 유사한; bash
와 사이의 구문 zsh
이 항상 호환되는 것은 아닙니다 . .bashrc
및 둘 다 설정이 아닌 설정을 .bash_profile
위해 설계되었습니다 .bash
zsh
.bashrc
및.bash_profile
읽을되지 않습니다zsh
내가 현재 내 가지고rvm
뿐만 아니라$PATH
에서.bashrc
, 그리고 내python
에서뿐만 아니라.bash_profile
, 모두가 잘 추가되고 있습니다. 어쨌든 다른 모든 구성이 거기에 저장 되므로 모든$PATH
내보내기를~/.zshrc
로 이동할zsh
것입니다. 저는 인정해야합니다. 저는 다른 종류의 껍질에 너무 익숙하지 않습니다. 당신이 게시 한 링크를 읽음으로써 나는 인터랙티브 쉘을 사용하고 있다고 생각하지만, 확실히하기 위해 더 읽을 것입니다. 다시 한번 감사드립니다!