터미널에서 실행하려고 하면 오류가 발생합니다 The command could not be located because '/usr/bin' is not included in the PATH environment variable
.
예를 들어.
jeper@jeper:~$ clear
Command 'clear' is available in '/usr/bin/clear'
The command could not be located because '/usr/bin' is not included in the PATH environment variable.
clear: command not found
그리고 좋아요
jeper@jeper:~$ vi
Command 'vi' is available in '/usr/bin/vi'
The command could not be located because '/usr/bin' is not included in the PATH environment variable.
vi: command not found
문제가 무엇입니까? 어떻게 해결하나요?
답변1
$PATH가 비어 있는 것 같습니다. 시도해 보세요 echo $PATH
. 출력은 다음과 유사해야 합니다.
/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/root/bin
그렇지 않은 경우 또는 명령을 사용하여 사용자를 전환하는 경우 .bash_profile
다음 에 사용해야 합니다..bashrc
su username
su - username
답변2
이 시도
이동(터미널에 입력):
gedit ~/.bashrc
.bashrc 탭을 클릭하고 다음을 파일 하단에 붙여넣습니다.
export PATH=/usr/bin:$PATH
잘 작동할 거예요 :)
답변3
터미널에서 명령 이름을 실행하면 시스템은 해당 실행 파일이 있는 디렉터리 목록에서 해당 이름의 실행 파일을 찾습니다. 이 목록은 귀하의길$PATH
Bash 쉘(및 대부분의 다른 *nix 쉘)에서는 변수 에 보관됩니다 . bash를 사용하고 있는 것 같으니 계속 읽어보세요.
$PATH
다양한 장소에 설치되어 있습니다 . 첫째, $PATH
에서 설정된 시스템 범위가 있다 /etc/profile
. 각각의 새 사용자는 $PATH
해당 사용자 세트를 상속받습니다 . 일반적으로 /usr/bin
이는 시스템에 추가되어야 합니다 $PATH
. /etc/profile
예를 들어 내 Debian에는 다음이 있습니다.
PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
export PATH
그러면 다양한 사용자별 bash 시작 파일이 있습니다. 어느 것을 읽을 것인가에 달려있다어떻게대화식 또는 비대화식 쉘로 실행되는지 여부와 로그인 쉘인지 여부에 관계없이 bash를 시작합니다. @Gilles의 매우 좋은 답변을 참조하십시오.여기다른 쉘 호출로 읽은 다른 파일.
$PATH
요약하자면, 시스템 전체 설정을 변경하지 않고 사용자에게 특정 디렉터리를 추가하려면 $HOME/.profile
파일에 다음 줄을 추가하세요.
PATH="$PATH:/usr/bin"
~/.profile
bash
로그인할 때 한 번만 읽는 것이 아니라 모든 쉘에서 읽습니다 . ~/.bashrc
반면에 터미널을 열 때마다 읽혀지므로 $PATH
한 번만 설정하면 되고 터미널을 열 때마다 재설정할 필요가 없기 때문에 여기서는 설정하고 싶은 곳이 아닙니다.
답변4
터미널로 이동(ctrl+alt+T):
sudo nano ~/.bashrc
파일 끝에 붙여넣습니다.
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:bin:/usr/games:/usr/local/games"
ctrl+X
->Y
->Enter
source ~/.bashrc