virtualenv 때문인지는 모르겠지만, tensorflow 환경을 설정하기 위해 virtualenv 명령어를 실행해봤습니다. 이제 경로가 전혀 로드되지 않습니다. 아무것도 작동하지 않습니다. 기본 명령(예 ls
: )을 실행하려면 전체 스크립트( )를 실행해야 합니다 /bin/ls
. 모든 경로 내보내기를 수동으로 실행하지 않으면 아무것도 할 수 없습니다.
$ export PATH=/bin/:$PATH
등.
로그아웃했다가 SSH를 통해 다시 로그인한 후에도 아무 것도 로드되지 않습니다.
흥미롭게 .bashrc
도 둘 다 .bash_profile
로드됩니다(그러나 특정 명령(예: )을 실행할 수 없기 때문에 성공적으로 로드되지는 않습니다 source
). 또한 이 컴퓨터에는 루트 액세스 권한이 없으므로 전역적으로 아무것도 변경(또는 중단)할 수 없습니다.
또한 "비활성화"가 작동하지 않기 때문에 virtualenv를 종료할 수 없습니다.
내가 무엇을 깨뜨렸습니까?
답변1
$PATH
대신 변수를 재정의했을 수 있습니다 .연장하다그것.
쉘 시작 파일 중 하나에 다음과 같은 할당이 있을 수 있습니다.
PATH="/some/path"
바꾸다
PATH="/some/path:$PATH"
당신이 어디에 배정되었는지 알아보고 PATH
그들이 결코 배정되지 않도록 하십시오.바꾸다 $PATH
하지만연장하다그것:
/usr/bin/grep 'PATH=' ~/.bash*
질문을 즉시 찾을 수 없는 경우 이 파일의 관련 스니펫으로 답변을 업데이트하세요.
쉘 스크립트에서 오류를 수정하기 전 해결 방법으로 /etc/profile
대부분의 Linux/BSD 배포판에서 시스템 전체가 정의된 위치를 확인할 수 있습니다. $PATH
달리기
`export PATH="/usr/bin:/usr/local/bin:$HOME/bin"`
이를 통해 표준 위치에 설치된 모든 도구에 액세스할 수 있습니다.
virtualenv의 요점은 프로젝트별로 환경을 정의할 수 있다는 것입니다.아니요환경별 코드로 셸 시작 파일을 복잡하게 만드세요. 관련된 모든 설치 스크립트를 제거(주석 처리)하고 virtualenv
도구를 사용하여 각 디렉터리의 환경을 생성/업데이트합니다.