Bash에서 zsh로 이동하려고합니다.
.bashrc를 .zshrc에 직접 넣었는데 Bash를 다시 사용하려고 할 때 많은 오류가 발생했습니다.
.bashrc를 .zshrc로 내보내려면 어떻게해야합니까?
Bash에서 zsh로 이동하려고합니다.
.bashrc를 .zshrc에 직접 넣었는데 Bash를 다시 사용하려고 할 때 많은 오류가 발생했습니다.
.bashrc를 .zshrc로 내보내려면 어떻게해야합니까?
답변:
lhunath의 대답이 나를 올바른 방향으로 밀었지만 zsh는 .profile
자동으로 소스를 제공하지 않는 것 같습니다 . 이 주제에 대한 많은 좋은 정보는 이 수퍼 유저 게시물 에서 찾을 수 있습니다 .
내가 사용하는 적응은 공통 별칭과 기능 .profile
을 다음과 같이 수동으로 소싱하는 것입니다.
에서 ~/.bashrc
:
source ~/.profile
에서 ~/.zshrc
:
[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'
emulate
zsh 내장 명령입니다. 단일 인수로 zsh 옵션을 설정하여 지정된 쉘을 가능한 많이 에뮬레이트하십시오.
당신은 "할 수 없습니다 수출 당신의" .bashrc
A와 .zshrc
. 명령 .bashrc
을 실행하는 파일입니다 bash
. 명령 .zshrc
을 실행하는 파일입니다 zsh
.
zsh
에서 bash
명령 을 실행할 수있을 것으로 기대할 수 없으므로 에서 실행하는 대신 .bashrc
새 명령으로 변환해야 .zshrc
합니다 .bashrc
..zshrc
후자로 이전하거나 복사.
모든 쉘에 대한 공통 쉘 초기화 파일을 원한다면; 사용 .profile
(및 제거 .bashrc
하고 .zshrc
). 모든 POSIX 셸에서 제공됩니다. 그리고 거기에서 POSIX 쉘 기능 만을 고수하십시오 . 그런 다음 해당 코드는 POSIX 셸에서 실행됩니다. (하지만 zsh
POSIX를 준수하는지 100 % 확신하지는 않습니다 .)
보다: http://mywiki.wooledge.org/DotFiles .
그러나-그리고 나는 당신의 질문 의이 부분을 처음 잘못 읽었습니다-당신이 거기 에 명령 을 넣지 않는 한 당신을 bash
실행할 때 오류를 경험해서는 안됩니다 . 당신은? 어떤 오류가 발생합니까? 당신이 당신의 코드를 추가 했고 (분명히) 이해하지 못하는 것처럼 들립니다..bashrc
zsh
zsh
.bashrc
bash
제쳐두고, ojblass
부분적으로 만 성공하는 이식성 지점을 만들려고합니다. zsh
대본을 작성할 때는 대단한 껍질이지만 (내 자신이 명예를 얻지는 못했지만) #!/usr/bin/env bash
대신 그렇게하는 것이 좋습니다 . 대부분 자신의 (그리고 결국에는 당신이 그들과 공유하는 사람들) 이식성을 위해.