“-bash : ls : 명령을 찾을 수 없습니다”


30

OS X Lion (10.7)의 최신 업데이트를 설치했습니다. 그렇게 한 후에 터미널은 정상적인 명령을 인식하지 못합니다. 나는 타이핑 ls하고 얻었다 :

-bash: ls: command not found

내 경로에 usr / bin을 추가하려고 시도했지만 입력 edit .bash_profile이 작동하지 않으므로 .bash_profile을 편집 할 수 없습니다 . 터미널에서 필요한 명령을 인식하지 못하므로 Finder에서 모든 파일을 표시하도록 설정할 수 없습니다.

내가 무엇을해야 하나?


2
길을 가고 무엇이 흔들리는 지 봅시다. export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin두 개의 명령이 없기 때문에 어두운 부분을 붙여 넣습니다 (또는 매우 조심스럽게 입력하십시오). 큰 일을하기 전에 백업을 시작하는 것이 신중할 수 있습니다.
bmike

1
@bmike 감사합니다! .bash_profile에 추가하고 모두 작동합니다. .bash_profile을 다음과 같이 열어야했습니다 : /usr/bin/vi ~/.bash_profile대답으로 넣으면 받아 들일 수 있습니다!
LuxuryMode

답변:


42

두 개의 명령에 경로에“누락 된”무언가가 없기 때문입니다.

큰 일을하기 전에 백업을 시작하는 것이 신중할 수 있습니다.

Mac OS X 10.7 (Lion)의 기본 경로는 다음과 같습니다.

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

위를 쉘 창에 입력하여 경로를 재설정 한 다음 입력 export PATH하면 해당 창이 수정 됩니다 .

따라서 여기서 시작하여 다른 내용이 누락되어 시작 점 파일 또는 정의 된 다른 곳에서 수정할 수 있습니다.

이 파손은 거의 항상 도트 파일에서 수정해야하는 것입니다. bash의 경우 수정하고 수정 .bash_profile하거나 .bashrc최근 변경 사항을 취소하여 $ PATH를 다시 ​​설정하면됩니다. 일반적인 오류는 새 경로를 할당하고 =의 오른쪽에있는 변수의 이전 값을 참조하지 않는 것입니다.


2
나에게 이것은 임시 수정을 제공합니다.
Etienne Low-Décarie 2016 년

2
고맙습니다! 😂 ls업데이트 후 작동하지 않았을 때 나는 조금 .bash_profile멍이 들었다
Adrian

그래 @Adrian 구문 오류 또는 빈 경로가 강렬한 불안을 야기 할 수 😅🤭🤬🔥
bmike

이것은 일시적인 수정을 주었다. CMD를 다시 시작하면 모든 단계를 다시 수행해야했습니다
Pawan

이것은 여전히 ​​Mac OS 10.14.3에서 작동합니다
Stephen Romero

11

이렇게하면 문제가 완전히 영구적으로 해결됩니다.

먼저 터미널에서 아래 명령을 사용하여 환경 경로를 내 보냅니다.

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/b‌​in

이제 원하는 명령이 있습니다. (예 : try ls. 명령이 작동하는 것을 볼 수 있습니다). 그러나 이것은 현재 세션에만 해당됩니다. 터미널을 닫고 새 터미널을 열면 이전 문제가 발생합니다. 이 변경 사항을 영구적으로 유지하려면 아래 명령을 사용하십시오.

홈 디렉토리로 이동

cd ~

nano / vim에서 .bash_profile 파일을여십시오 (나노를 사용하고 있습니다)

nano .bash_profile

나노 에디터가 열립니다. 새 줄에 다음을 붙여 넣습니다.

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

'control'+ 'o'를 눌러 (WriteOut)을 저장하고 'control'+ 'x'를 눌러 나노를 종료하십시오.

다 끝났어! 이제 명령을 시도하십시오.


3

/etc/profile쉘 시작시 실행되지 않은 것처럼 들립니다 . PATH 초기화를 담당하는 글로벌 시작 파일입니다. /etc/profile다음 명령으로 존재하고 읽을 수 있고 실행 가능한지 확인하십시오 .

. /etc/profile

없는 경우 Lion이 설치된 백업 또는 다른 시스템에서 복원하거나 Lion을 다시 설치해야합니다. 존재하지만 실행 가능하지 않은 경우 디스크 유틸리티를 사용하여 디스크 권한을 복구하십시오.

그것이 존재하고 실행 가능하고 (일부 코드가 포함되어있는 경우), 실행될 때 실행되지 않거나 시작 스크립트가 어떻게 든 무시할 수 있습니다. 이 문제를 해결 . /etc/profile하려면 처음 시작할 때 ~/.bash_profile실행 해보 십시오 . 여전히 문제가 발생하면 echo $PATH실행 후 추가 하여 PATH가 제대로 초기화되었는지 확인하십시오. 그렇다면 스크립트의 무언가가 그것을 바꾸는 것입니다.

기본 내용은 다음과 같습니다 /etc/profile.

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
    eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
fi

path_helper기본 PATH를 구성합니다. 당신은 달리기를 시도 할 수 있습니다

unset PATH; /usr/libexec/path_helper -s

그것이 생산하는 것을 볼 수 있습니다.

어떤 경우 든 시동 스크립트에 문제가 없다면 Apple 지원 http://www.apple.com/support/contact/에 문의 하거나 https://bugreport.apple.com 에서 버그를보고 하십시오. / Apple에 문제가 있음을 알리기 위해.


unset PATH; /usr/libexec/path_helper -s내에 포함되지 않은 PATH를 표시합니다 /etc/profile. 어떤 제안?
Etienne Low-Décarie

. /etc/profile일시적으로 실행 하면 문제가 해결됩니다. 내 상단에 붙여 넣었 ~/.bash_profile지만이 중 하나도 실행되지 않은 것으로 보입니다.
Etienne Low-Décarie

1
시작 파일의 전체 목록과 검색 순서는 bash 매뉴얼 페이지를 확인하십시오. 예를 들어 로그인 파일이 있으면 프로필보다 우선합니다. 다른 시작 파일을 확인하십시오.
Chris 페이지

1

실제로 경로에 문제가 있는지 확인하려면 결과는 /bin/ls무엇입니까?

작동하면 경로를 복원 해야하는 것보다 /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin예를 들어 VI경로가 (내 Mac) 인 경우 사용할 수 있습니다 /usr/bin/vi.


0

나는 적어도 내 경우에는이 오류로 이어진 실수를 공유하려고 생각했습니다.

에 새 항목 PATH을 추가했을 때 방금 추가 한 경로 끝에 ~/.bash_profile추가하는 것을 잊었습니다 :$PATH.

여기에서 마스터가 vi 명령을 사용하여 처음에 열 수 없기 때문에 이미 bash_profile으로 돌아 가려고 지적한 임시 수정 (터미널의 다음 명령)을 사용했습니다.

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

일단 들어가면 실수를 바로 잡았습니다.

(부정적인 데이터가 중요합니다!)


-1

이것이 일어날 때 내 envenonment 변수로 maven 경로를 설정하려고했습니다. 그래서 방금 내 .profile 및 .bash_profile 파일을 휴지통으로 옮기고 다시 시도했는데 효과가있었습니다.


-1

터미널을 재설정하면 작동합니다. 기본 구성이 재설정됩니다.

터미널을 재설정하십시오. 맨 위 탐색에서 쉘 >> 재설정으로 이동하십시오.

여기에 이미지 설명을 입력하십시오


1
터미널을 재설정하면 문제가 bash어떻게 해결 됩니까?
nohillside

-2

PATH 변수가 손상된 것 같습니다. 스크립트 내에서 PATH 변수를 수정하고 있는지 확인하거나 echo $ PATH라고 말하여 PATH를 확인하면 손상이 없는지 확인할 수 있습니다.


-3

다음과 같이 경로를 내보낼 수 있습니다.

내보내기 PATH = $ PATH : / bin : / usr / local / bin


3
다른 질문에 오신 것을 환영합니다! 이 질문에는 이미 허용 된 답변이 있으며 귀하의 답변은 허용 된 답변과 실질적으로 다르지 않습니다. 올바른 답변을 제공하는 방법에 대한 다음 FAQ를 참조하십시오. apple.stackexchange.com/help/how-to-answer
fsb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.