OS X Lion에서 터미널이 ~ / .bashrc를로드하지 않는 문제를 해결하는 방법 [닫기]


176

Cmd+를 사용하여 터미널에서 새 탭을 열 때마다 T이전 탭과 동일한 디렉토리에서 bash가 열립니다. ~디렉토리 에있을 때 제대로 작동하지만 다른 곳에 있으면 오류로드가 발생합니다..bashrc

Last login: Sat Oct 15 21:10:00 on ttys002
-bash: .bashrc: No such file or directory
Jakub-Arnolds-MacBook-Pro:projects darth$ 

.bashrc내가하면 source ~/.bashrc모든 것이 원활하게 작동 하기 때문에 절대 경로가 아닌 상대 경로를 통해로드 된 것처럼 보입니다 .

로드 된 bashrc

Snow Leopard에서 업그레이드하기 전에 동일한 문제가 없었기 때문에 이것이 OS X Lion 관련 문제라고 생각합니다. 그러나 터미널이 항상에서 열리면 발생할 수 있습니다 ~. 동일한 디렉토리를 열려고했는지 기억이 나지 않습니다.

그러나 질문은 동일합니다. 어떻게 ~/.bashrc상대 경로가 아닌 절대 경로를 통해 터미널로드 를 만들 수 있습니까?


1
이 질문은 apple.SE (가능한 경우?)로 옮겨야합니다.
Sparr

@Sparr 나는 당신에게 전적으로 동의하지만 중재자는 이전 질문이 아닌 최신 질문 만 이동합니다. 여기에서
рüффп

답변:


357

터미널은 로그인 쉘을 엽니 다. 즉, ~/.bash_profile실행 ~/.bashrc되지 않습니다.

대부분의 시스템에서이 솔루션은 "요구"하는 것입니다 ~/.bashrc~/.bash_profile당신의이 조각을 넣어 : ~/.bash_profile:

[[ -s ~/.bashrc ]] && source ~/.bashrc

8
아무도 그 일을 설명 할 수 [[ -s /file/path ]]있습니까? 설명을 위해 Google에 시도하는 것은 쉽지 않습니다.
Shane

18
From man bash: -s file 파일이 존재하고 크기가 0보다 크면 True입니다.
ckruse

1
"터미널이 로그인 쉘을 엽니 다"-다른 유형의 os 쉘은 무엇입니까? 이에 대한 추가 문서는 어디서 찾을 수 있습니까?
dknight

4
소위 "대화식 쉘"과 "로그인 쉘"이 있습니다. bash 매뉴얼 ( man bash)이 그것에 대해 이야기하고 INVOCATION 장 을 입력하십시오 (을 입력하여 INVOCATION전화 man bash한 후 검색하십시오 /INVOCATION)
ckruse

3
코드 행으로 해결 된 코드 실행 상황과 관련된 질문이 프로그래밍 질문 사이트에서 "주제를 벗어난"방법을 알 수 없습니다.
Kheldar

26

이름 .bashrc을 바꾸 .profile거나 후자를 전자와 소프트 링크하는 것도 트릭을 수행해야합니다. 여기를 참조 하십시오 .


또는 심볼릭 링크를 사용할 수 있습니다. cd && ln -s ./.bashrc ./.profile심볼 링크는 파일 경로와 관련하여 중요합니다. 위의 구문을 사용하면 효과가 있다고 생각하지만 어떤 경우에도 절대 경로를 사용할 수 있습니다.
Steve Benner

1
아뇨? 이 파일들은 다른 목적을 가지고 있습니다. Bash 구문이 .profile있으면 정기적으로 중단 sh됩니다.
tripleee

14

내 안에 다음이 있습니다 ~/.bash_profile.

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

나는이 있다면 .bashrc대신에 ~/.bashrc, 당신이보고있는 같은 증상을 볼 수있을 것입니다.

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