2017-12-12 9 views
0

Mac OS X (10.12.3)의 bash 유닉스 쉘에 손상된 파일이 있다고 생각합니다. 터미널을 열면 bash에 액세스 할 수 없습니다. 반환 내가 할 수있는 유일한 방법이 실행 % 에코 $의 PATH : 나는이 일을하고 $ PATH 변수를 확인한 후

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH 

를 사용하여 비난에 대한 액세스를 복원 할 수 있습니다

/usr/local/share/npm/bin:/Users/greg/mongodb/bin:/Users/g 

, 나는

참조
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/share/npm/bin:/Users/greg/mongodb/bin:/Users/g 

그러나 새 터미널 창을 열면 방금 추가 한 $ PATH 정보가 없습니다.

다음이이 Stackoverflow post 나는이 변수를 설정해야하는 장소를보고있다.

에서 찾고은/etc/경로 I은 다음을 참조하십시오

/usr/bin 
/bin 
/usr/sbin 
/sbin 
/usr/local/bin 
/Users/greg/mongodb/bin 

A/등/프로필이 존재하지 않는

내 ~/.bash_profile을 보이는 등이

export PATH=/usr/local/share/npm/bin:/Users/greg/mongodb/bin:/Users/g 
reg/anaconda2/bin:/Applications/Postgres.app/Contents/Versions/latest 
/bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/usr/bin:/b 
in:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/Library/Framewor 
ks/Mono.framework/Versions/Current/Commands:/Applications/Visual 
Studio Code.app/Contents/Resources/app/bin: 

내 ~/.profile은 다음과 같이 표시됩니다.

export NODE_PATH="/usr/local/lib/node" 
export PATH="/usr/local/share/npm/bin:$PATH" 
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 

모든 것이 괜찮아 보입니다. 이것은 bash가 다른 파일을 사용하여 $ PATH 정보를 포함하는 환경 변수를 설정하고 있음을 나타 냅니까? 그렇다면 어디에 위치하고 있습니까? 그리고 왜 $ PATH 변수를 변경해도 지속되지 않습니까?

+0

~/.bash_profile을 완전히 엉망이 보인다; 그것은 마치 하나의 긴 줄이어야하고 (zachdb86이 말한 것처럼)': $ PATH'로 끝나야합니다. 그러나 다른 덜 분명한 문제가있을 수도 있습니다. –

답변

0

.profiles에서 PATH를 내 보내면 $ PATH를 포함해야합니다. 그렇지 않으면 PATH가 덮어 쓰여집니다. .profile 또는 .bash_profile의 최종 내보내기에서이를 수행하지 마십시오.

또한 NODE_PATH과 첫 번째 export PATH....bash_profile으로 옮기고 해당 최종 내보내기 경로를 삭제합니다.

그래서 내보내기 문은 다음과 같습니다

export PATH=/usr/local/share/npm/bin:...:$PATH