Python의 easy_install로 설치된 패키지를 제거하려면 어떻게해야합니까?
Python easy_install
은 새 패키지를 매우 편리하게 설치할 수 있도록합니다. 그러나 내가 말할 수있는 한, 설치된 패키지 나열 및 제거와 같은 종속성 관리자의 다른 공통 기능을 구현하지 않습니다.
설치된 항목을 찾는 가장 좋은 방법은 무엇이며 설치된 패키지를 제거하는 가장 좋은 방법은 무엇입니까? 패키지를 수동으로 제거 할 경우 업데이트해야하는 파일이 있습니까 (예 : rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg
또는 유사)?
setuptools / easy_install의 대안 인 pip 는 "uninstall"명령을 제공합니다.
$ wget https://bootstrap.pypa.io/get-pip.py
$ python get-pip.py
그런 다음 사용 pip uninstall
하여 설치된 패키지를 제거 할 수 있습니다.easy_install
설치 제거하기 위해 .egg
당신이 필요로 rm -rf
계란을 (그것은 디렉토리 수 있음)과에서 일치하는 줄을 제거site-packages/easy-install.pth
먼저 다음 명령을 실행해야합니다.
$ easy_install -m [PACKAGE]
패키지의 모든 종속성을 제거합니다.
그런 다음 해당 패키지의 달걀 파일을 제거하십시오.
$ sudo rm -rf /usr/local/lib/python2.X/site-packages/[PACKAGE].egg
모든 정보는 다른 답변에 있지만 요청을 모두 요약하지 않거나 불필요하게 복잡하게 만드는 것 같습니다.
제거가 필요한 경우 다음을 사용하십시오.
pip uninstall <package>
(을 사용하여 설치
easy_install pip
)'설치된 패키지 나열'에는 다음 중 하나를 사용해야합니다.
pip freeze
또는:
yolk -l
더 많은 패키지 세부 정보를 출력 할 수 있습니다.
(통해 설치
easy_install yolk
또는pip install yolk
)
-m 옵션을 사용하여 패키지를 다시 설치 한 다음 lib /의 .egg 파일과 bin /의 바이너리를 제거하여 해킹을 제안하는 몇 가지 소스 가 있습니다 . 또한이 setuptools 문제에 대한 논의는 setuptools 문제 21 로 파이썬 버그 추적기에서 찾을 수 있습니다 .
편집 : 파이썬 버그 추적기에 대한 링크를 추가했습니다.
문제가 심각하게 성가신 경우 virtualenv를 고려할 수 있습니다 . 파이썬 라이브러리를 캡슐화하는 환경을 만들 수 있습니다. 전역 사이트 패키지 디렉토리가 아닌 여기에 패키지를 설치합니다. 해당 환경에서 실행하는 모든 스크립트는 해당 패키지 (선택적으로 글로벌 패키지도 포함)에 액세스 할 수 있습니다. 전 세계적으로 설치하고 싶은지 확실하지 않은 패키지를 평가할 때 이것을 많이 사용합니다. 패키지가 필요하지 않다고 결정하면 가상 환경을 날려 버리는 것이 쉽습니다. 사용하기 매우 쉽습니다. 새 환경 만들기 :
$>virtualenv /path/to/your/new/ENV
virtual_envt는 새 환경에 setuptools를 설치하므로 다음을 수행 할 수 있습니다.
$>ENV/bin/easy_install
새로운 환경을 설정하는 자체 부 스트랩 스크립트를 만들 수도 있습니다. 따라서 하나의 명령으로 기본적으로 설치된 python 2.6, psycopg2 및 django를 사용하여 새 가상 환경을 만들 수 있습니다 (원하는 경우 환경 별 Python 버전을 설치할 수 있음).
공식 (?) 지침 : http://peak.telecommunity.com/DevCenter/EasyInstall#uninstalling-packages
패키지를 다른 버전으로 교체 한 경우 PackageName-versioninfo.egg 파일 또는 디렉토리 (설치 디렉토리에 있음)를 삭제하여 필요하지 않은 패키지를 삭제할 수 있습니다.
현재 설치된 패키지 버전 (또는 패키지의 모든 버전)을 삭제하려면 먼저 다음을 실행해야합니다.
easy_install -mxN PackageName
이렇게하면 Python이 제거하려는 패키지를 계속 검색하지 않습니다. 이 작업을 마치면 제거하려는 스크립트와 함께 .egg 파일 또는 디렉토리를 안전하게 삭제할 수 있습니다.
시험
$ easy_install -m [PACKAGE]
그때
$ rm -rf .../python2.X/site-packages/[PACKAGE].egg
설치된 Python 패키지를 나열하려면 yolk -l
. easy_install yolk
그래도 먼저 사용해야 합니다.
시간이 지남에 따라 설치된 많은 임의의 Python 패키지를 제거하려고 시도 하면서이 질문을 보았습니다.
이 스레드의 정보를 사용하여 다음과 같이 생각했습니다.
cat package_list | xargs -n1 sudo pip uninstall -y
는 package_list
A로부터 (AWK) 정리되어 pip freeze
VIRTUALENV에.
거의 모든 Python 패키지 를 제거하려면 :
yolk -l | cut -f 1 -d " " | grep -v "setuptools|pip|ETC.." | xargs -n1 pip uninstall -y
MacOS X Leopard 10.6.blah에서 동일한 문제가 발생했습니다.
해결책은 MacPorts Python을 호출하고 있는지 확인하는 것입니다.
sudo port install python26
sudo port install python_select
sudo python_select python26
sudo port install py26-mysql
도움이 되었기를 바랍니다.
For me only deleting this file : easy-install.pth worked, rest pip install django==1.3.7
This worked for me. It's similar to previous answers but the path to the packages is different.
- sudo easy_install -m
- sudo rm -rf /Library/Python/2.7/site-packages/.egg
Plaform: MacOS High Sierra version 10.13.3
'developer tip' 카테고리의 다른 글
옵션 추가 (0) | 2020.09.30 |
---|---|
JavaScript에서 배열의 최소 / 최대 요소 찾기 (0) | 2020.09.30 |
macOS Mojave 업데이트 후 Git이 작동하지 않음 (xcrun : 오류 : 잘못된 활성 개발자 경로 (/ Library / Developer / CommandLineTools)) (0) | 2020.09.30 |
입력 유형 = "날짜"형식을 변경하는 방법이 있습니까? (0) | 2020.09.30 |
클래스 JSON을 직렬화 가능하게 만드는 방법 (0) | 2020.09.30 |