macOS Catalina 10.15 (베타)-~ / .bash_profile이 내 셸에서 제공되지 않는 이유는 무엇입니까?


120

줄 아래에 추가 한 환경 변수를 설정 ~/.bash_profile하고 ~/.profile싶지만 작동하지 않습니다.

export JBOSS_HOME=/Users/{USERNAME}/Desktop/jboss7

그런 다음 터미널을 종료하고 실행시 다시 엽니 다 echo $JBOSS_HOME.
여기에 이미지 설명 입력


.bash_profile이 제공되지 않은 것 같습니다. 터미널이 bash 로그인 셸을 생성한다고 확신 합니까? 그렇지 않으면 .bash_profile이 무시됩니다.
user1934428

1
@ user1934428 예 맞습니다. 기본 bash가 변경된 이유를 모르겠어요? !!
Reza Dehnavi 19

이해가 안 돼요. 어떤 "기본값"이 변경됩니까? 어떤 터미널 프로그램을 사용하고 있는지 말하지 않았지만 일반적으로 터미널 응용 프로그램에서 쉘을 시작하는 방법을 구성 할 수 있습니다.
user1934428

@ user1934428 다양한 셸이 있는지 몰랐습니다.
Reza Dehnavi 19

1
Apple은 macOS Catalina의 기본 셸인 zsh로 bash를 대체합니다. stackoverflow.com/a/59151321/5788247
Shomu

답변:


304

Apple은 기본 셸을 zsh로 변경했습니다. 따라서 구성 파일의 이름을 바꿔야합니다. .bashrc는 지금 .zshrc이고 .bash_profile지금 .zprofile입니다.


4
Apple은 라이센스 문제로 인해 bash에서 zshell로 변경되었습니다. thenextweb.com/dd/2019/06/04/…
Manuel Hernandez

119
여기에는 멋진 사용자 경험을 얼마나 모든 OS-X 업그레이드 내 dev에 설치 나누기
크리스 헤이 튼

2
@ChrisHatton 나는 현재 설정을 깨고 모든 것을 처음부터 다시 시작할 수 있도록 다음 업데이트를 기다리며 다음 릴리스를 기대합니다!
Utsav Gupta 20.06.04

51

어떤 이유로 (나처럼) ~/.bash_profile파일의 이름을 바꾸거나 이동하고 싶지 않다면 다음 작업을 수행 할 수 있습니다.

  1. 새 파일 생성 ~/.zprofile
  2. 거기에 입력 source ~/.bash_profile
  3. 저장하고 닫습니다
  4. 새 터미널 세션 실행

5

나는 새로운 파일을 만들었습니다.

/usr/local/bin/mybash

래퍼 스크립트를 포함합니다.

/usr/local/bin/bash --init-file $HOME/.bashrc

이 local / bin / bash를 HomeBrew 에서 설치했습니다 .

전체 이벤트 순서

brew install bash
echo "/usr/local/bin/bash --init-file $HOME/.bashrc" > /usr/local/bin/mybash
chmod +x /usr/local/bin/mybash

그런 다음 terminal.app[cmd-comma]에 대한 설정을 열었습니다 . 언더 General탭에 대한 라디오 버튼을 선택Command (complete path)

텍스트 상자에서 텍스트를에서 /bin/zsh/로 변경합니다 /usr/local/bin/bash.

최종 형식의 예


2
위의 답변은 zsh와 bash에서 특정 구문이 다르다는 것을 고려하지 않기 때문에 이것은 좋은 옵션입니다.
Prashant Sharma

3

터미널 창을 닫으면 해당 창에서 설정 한 변수를 더 이상 사용할 수 없습니다. 세션과 모든 터미널 창에서 변수 값을 유지하려면 쉘 시작 스크립트에서 설정해야합니다. 여러 세션에서 변수 및 기타 설정을 유지하기 위해 zsh 셸 시작 스크립트를 수정하는 방법에 대한 자세한 내용은 zsh man 페이지 의 "Invocation"섹션을 참조하십시오 .

~/.zlogin변수를 추가 하는 데 사용할 수 있습니다 .

이 참조를 확인하십시오 .


1

기존 bash_profile을 복사하고 이름을 zprofile로 지정하면 정상적으로 작동합니다.

  • 터미널에서 아래 명령을 실행하면 새 터미널을 닫고 열면 설정됩니다.

cp ~/.bash_profile ~/.zprofile


0

bash 프로필을 zsh 프로필로 변경하면 작동하고 소싱하여 실제로 볼 수 있습니다.

vikas@Vikas-Kumar ~ % mv .bash_profile .zsh_profile
vikas@Vikas-Kumar ~ % source .zsh_profile

0

다음과 같이 simbolic 링크를 만들고 .bash_profile 파일을 유지할 수 있습니다.

ln -s .bash_profile .zsh_profile
source .zsh_profile

.bash_profile의 모든 변경 사항은 .zsh_profile에 반영됩니다.


나는 에선 무엇입니까 : .zsh_profile : 작업이 허용되지 않습니다
살만 Ullah 칸에게

0

파일을 업데이트 할 필요가 없습니다. zsh는 mac의 기본값이므로 터미널에 넣으십시오. 예 :

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

0

os Catalina / bin / bash 가 무료로 제공 되더라도 brew가 필요하지 않습니다. .bash_profile을 만들고 터미널 설정의 셸을 / bin / bash로 설정하기 만하면 됩니다. .bash_profile을 자동으로 찾습니다. z-shellbash -shell 이 아니며 단순히 이름 바꾸기가 대부분의 경우 작동하지만 확실히 올바르지 않습니다.


-3
cp zprofile ~/.zprofile

추가 .zprofile:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

예. 으로>vi .zprofile

끝난

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