![Bash 대화형 셸에서 해시된 실행 파일 위치를 잊어버렸습니다.](https://linux55.com/image/23069/Bash%20%EB%8C%80%ED%99%94%ED%98%95%20%EC%85%B8%EC%97%90%EC%84%9C%20%ED%95%B4%EC%8B%9C%EB%90%9C%20%EC%8B%A4%ED%96%89%20%ED%8C%8C%EC%9D%BC%20%EC%9C%84%EC%B9%98%EB%A5%BC%20%EC%9E%8A%EC%96%B4%EB%B2%84%EB%A0%B8%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
저는 종종 Python virtualenv에서 작업 중이고 실행 가능한 Python 프로그램(예: bpython)을 실행하고 싶은 상황에 직면합니다. 나는 그것을 실행했지만 내 virtualenv에 설치하지 않았다는 사실을 잊어버렸기 때문에 올바른 일을 하지 않을 것입니다. 그런 다음 virtualenv에 bpython을 설치했지만 새 버전을 실행하려고 하면 bash는 이전 버전을 "기억"하고 이를 호출합니다.
더 구체적으로:
(venv)$ bpython
(whoops, system-level bpython!)
(venv)$ which bpython
/usr/local/bin/bpython
(venv)$ type bpython
bpython is hashed (/usr/local/bin/bpython)
(venv)$ pip install bpython
(venv)$ which bpython
/Users/lorin/.virtualenvs/venv/bin/bpython
(venv)$ type bpython
bpython is hashed (/usr/local/bin/bpython)
/usr/local/bin/bpython
bpython의 위치가 세션의 위치 라는 것을 "잊으라고" bash 프롬프트에 어떻게 지시합니까 ?
답변1
bash에게 다시 해시하도록 지시할 수 있습니다.
hash -r
답변2
PATH
변수를 재설정 하십시오.
export PATH=$PATH