파이썬 setup.py 제거 패키지를 설치했습니다 python

에 python 패키지를 설치했습니다 python setup.py install.

제거하려면 어떻게합니까?



답변

참고 : 사용하지 마십시오 python setup.py install사용pip install .

모든 파일을 수동으로 제거하고 설치에서 수동으로 수행 한 다른 작업을 실행 취소해야합니다.

모든 파일 목록을 모르는 경우 --record옵션을 사용하여 다시 설치하고 생성 된 목록을 살펴볼 수 있습니다.

설치된 파일 목록을 기록하려면 다음을 사용하십시오.

python setup.py install --record files.txt

설치 제거를 원하면 xargs를 사용하여 제거를 수행 할 수 있습니다.

xargs rm -rf < files.txt

또는 Windows를 실행중인 경우 Powershell을 사용하십시오.

Get-Content files.txt | ForEach-Object {Remove-Item $_ -Recurse -Force}

그런 다음 포함 디렉토리도 삭제하십시오 (예 : /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/my_module-0.1.egg/on) macOS. 파일이 없지만 파이썬은 여전히 ​​빈 모듈을 가져옵니다.

>>> import my_module
>>> my_module.__file__
None

일단 삭제되면 파이썬은 다음을 보여줍니다.

>>> import my_module
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'my_module'


답변

나를 위해 다음이 대부분 작동합니다.

핍을 설치하십시오. 예 :

$ easy_install pip

설치된 패키지의 이름이 pip 관점에서 어떻게 지정되어 있는지 확인하십시오.

$ pip freeze

여기에는 설치 한 모든 패키지의 이름이 표시되고 pip에서 감지 한 패키지가 표시됩니다. 이름은 언젠가는 길고 이후에 표시되는 패키지 이름 만 사용하십시오 #egg=. 대부분의 경우 버전 부분 ( ==또는 뒤에 오는 것)을 무시할 수도 있습니다 -.

그런 다음 패키지를 제거하십시오.

$ pip uninstall package.name.you.have.found

패키지 제거에 대한 확인을 요청하면 운이 좋은 사람이며 제거됩니다.

pip는 pip에 의해 설치된 모든 패키지를 감지합니다. 또한 easy_install 또는 setup.py를 통해 설치된 대부분의 패키지를 감지해야하지만 드물게 실패 할 수 있습니다.

다음은 ttr.rdstmcMS Windows에서 이름이 지정된 패키지를 사용한 로컬 테스트의 실제 샘플입니다 .

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
ttr.utcutils==0.1.1dev

$ python setup.py develop
.....
.....
Finished processing dependencies for ttr.rdstmc==0.0.1dev

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
-e hg+https://vlcinsky@bitbucket.org/vlcinsky/ttr.rdstmc@d61a9922920c508862602f7f39e496f7b99315f0#egg=ttr.rdstmc-dev
ttr.utcutils==0.1.1dev

$ pip uninstall ttr.rdstmc
Uninstalling ttr.rdstmc:
  c:\python27\lib\site-packages\ttr.rdstmc.egg-link
Proceed (y/n)? y
  Successfully uninstalled ttr.rdstmc

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
ttr.utcutils==0.1.1dev

2015 년 5 월 20 일 수정

위에 쓰여진 모든 내용이 여전히 적용됩니다. 어쨌든 지금은 약간의 수정이 가능합니다.

Python 2.7.9 및 Python 3.4에서 pip 설치

최신 Python 버전에는 ensurepip오프라인 상태에서도 pip를 설치할 수 있는 패키지 가 제공됩니다.

$ python -m ensurepip-업그레이드

데비안 제시와 같은 일부 시스템에서는 시스템 파이썬 설치가 중단되는 것을 막기 위해 사용할 수 없습니다.

grep또는 사용find

위의 예에서는 grep설치 한 것으로 가정합니다 . (내 컴퓨터에 MS Windows가있을 때) Linux 유틸리티 세트 (grep 포함)를 설치했습니다. 또는 기본 MS Windows를 사용 find하거나 해당 필터링을 무시하고 감지 된 Python 패키지의 더 긴 목록에서 이름을 찾으십시오.


답변

# 1 답변에는 문제가 있습니다 :

  • Mac에서는 작동하지 않습니다.
  • 공백이나 다른 특수 문자가 포함 된 파일이 설치되면 xargs명령이 실패하고 개별 단어와 일치하는 모든 파일 / 디렉토리가 삭제됩니다.
  • -r인은 rm -rf당신이 원하지 않는 일을 삭제할 수 있습니다 불필요하고 최악이다.

대신 유닉스 계열의 경우 :

sudo python setup.py install --record files.txt
# inspect files.txt to make sure it looks ok. Then:
tr '\n' '\0' < files.txt | xargs -0 sudo rm -f --

그리고 창문의 경우 :

python setup.py bdist_wininst
dist/foo-1.0.win32.exe

setup.py설치 제거와 관련하여 해결할 수없는 문제가 있어서 일반적인 경우에는 방해가되지 않습니다. 더 완전한 대답을 보려면 다음 위키 페이지를 참조하십시오.

https://ofswiki.org/wiki/Uninstalling_setup.py_install


답변

먼저 설치 한 파일을 기록하십시오. 이전에 실행 한 경우에도이 명령을 반복 할 수 있습니다 setup.py install.

python setup.py install --record files.txt

제거하려는 경우 다음을 수행 할 수 있습니다.

sudo rm $(cat files.txt)

rm 명령은 공백으로 구분 된 파일 목록을 삭제하고 설치 레코드가 그러한 목록이기 때문에 작동합니다.


답변

이제 python은 설치 pip중에 설치할 수있는 옵션을 제공 합니다 (Windows에는 있고 최소한 Windows에는 python이 있습니다!). pip파이썬 설치 중에 설치 하기로 선택한 것을 고려하면 (실제로 기본값을 선택할 필요는 없습니다) pip이미 설치되어 있습니다. 그런 다음 pip명령 프롬프트에 입력 하면 도움말이 나타납니다. 필요한 사용법 지침을 찾을 수 있습니다. 예를 들어 pip list설치된 패키지 목록이 표시됩니다. 당신이 사용할 수있는

pip uninstall package_name

더 이상 원하지 않는 패키지를 제거합니다. 자세한 내용은 여기 (pip documentation)를 참조 하십시오 .


답변

게으른 방법 : 배포 패키지를 만든 후 먼저 다시 설치하면 Windows 설치 메뉴 (Windows를 사용하는 경우) 또는 rpm 명령에서 간단히 제거하십시오.

예를 들어

python setup.py bdist_wininst
dist/foo-1.0.win32.exe

( “foo”는 물론 예입니다).


답변

python 패키지 디렉토리로 이동하여 .egg 파일을 제거하십시오 (예 : python 2.5 (ubuntu) : /usr/lib/python2.5/site-packages/

파이썬 2.6 (우분투) : /usr/local/lib/python2.6/dist-packages/