python setup.py अनइंस्टॉल करें



pypi (9)

मैंने python setup.py install साथ एक पायथन पैकेज python setup.py install

मैं इसे कैसे अनइंस्टॉल कर सकता हूं?


# 1 उत्तर में समस्याएं हैं:

  • मैक पर काम नहीं करेगा।
  • यदि कोई फ़ाइल स्थापित है जिसमें रिक्त स्थान या अन्य विशेष वर्ण शामिल हैं, तो xargs कमांड विफल हो जाएगा, और अलग-अलग शब्दों से मेल खाने वाली किसी भी फाइल / निर्देशिका को हटा देगा।
  • rm -rf में 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 इंस्टॉल अनइंस्टॉल करने में setup.py समस्याएं भी हैं जो आपको एक सामान्य मामले में परेशान नहीं करेंगे। अधिक पूर्ण उत्तर के लिए, इस विकी पेज को देखें:

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


अपनी पायथन पैकेज निर्देशिका पर जाएं और अपनी .egg फ़ाइल को हटा दें, उदाहरण के लिए: पायथन 2.5 (उबंटू) में: /usr/lib/python2.5/site-packages/

पायथन 2.6 (उबंटू) में: /usr/local/lib/python2.6/dist-packages/


आदेशों को पढ़ने के लिए बैश का उपयोग करके संबंधित फ़ाइलों को निकालना बेहतर हो सकता है, जैसे निम्न:

sudo python setup.py install --record files.txt
sudo bash -c "cat files.txt | xargs rm -rf"

आपको मैन्युअल रूप से सभी फ़ाइलों को हटाने की आवश्यकता है, और मैन्युअल रूप से स्थापना की गई किसी भी अन्य सामग्री को पूर्ववत करना होगा।

यदि आप सभी फ़ाइलों की सूची नहीं जानते हैं, तो आप इसे --record विकल्प के साथ पुनर्स्थापित कर सकते हैं, और इस उत्पाद को सूचीबद्ध करने पर एक नज़र डालें।

स्थापित फ़ाइलों की एक सूची रिकॉर्ड करने के लिए, आप इसका उपयोग कर सकते हैं:

python setup.py install --record files.txt

एक बार जब आप अनइंस्टॉल करना चाहते हैं तो आप निकालने के लिए xargs का उपयोग कर सकते हैं:

cat files.txt | xargs rm -rf

या यदि आप विंडोज चला रहे हैं, तो पावरहेल का उपयोग करें:

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

मार्टिन ने जो कहा, उस पर विस्तार करते हुए, इंस्टॉलेशन आउटपुट रिकॉर्ड करना और थोड़ा बैश स्क्रिप्टिंग चाल काफी अच्छी तरह से करती है। यहां मैं क्या करता हूं ...

for i in $(less install.record);
sudo rm $i;
done;

और प्रतिष्ठा। की स्थापना रद्द।


मुझे लगता है कि आप setup.py खोल सकते हैं, पैकेज नाम का पता लगा सकते हैं, और उसके बाद इसे अनइंस्टॉल करने के लिए पीआईपी से पूछ सकते हैं।

नाम मानना ​​एक 'मेटाडाटा' चर में उपलब्ध है:

pip uninstall $(python -c "from setup import METADATA; print METADATA['name']")

मैंने पिछले कुछ समय में अपने वैश्विक पर्यावरण में "python setup.py install" चलाया था, और अनइंस्टॉल करने में बहुत कठिनाई थी। इन समाधानों ने मदद नहीं की। "पीआईपी अनइंस्टॉल" "अनइंस्टॉल नहीं कर सकता" splunk-appinspect 'के साथ काम नहीं करता है। अनइंस्टॉल करने के लिए कोई भी फाइल नहीं मिली। " "सुडो पाइप अनइंस्टॉल" काम नहीं किया "आवश्यकता को अनइंस्टॉल कर सकते हैं splunk-appinspect, स्थापित नहीं है"। मैंने पाइप को अनइंस्टॉल करने का प्रयास किया, पीआईपी कैश को हटाया, पैकेज के लिए अपनी हार्ड ड्राइव खोजना आदि ...

अंततः "पीआईपी शो" ने मुझे समाधान के लिए प्रेरित किया, "स्थान:" एक निर्देशिका को इंगित कर रहा था, और उस निर्देशिका का नाम बदलने से पैकेज को पीपी की सूची से हटा दिया गया। मैंने निर्देशिका का नाम बदल दिया, और यह पीआईपी सूची में फिर से दिखाई नहीं दिया, और अब मैं वर्चुअलएन्व में अपने पैकेज को पुनर्स्थापित कर सकता हूं।


वास्तव में सवाल का जवाब नहीं दे रहा है, लेकिन कुछ ऐसा जो मुझे हर दिन मदद करता है:

अपने पैकेज को साथ स्थापित करें

pip install .

यह पैकेज को $HOME/.local में रखता है। के साथ अनइंस्टॉल करें

pip uninstall <package_name>

सबसे पहले आपके द्वारा इंस्टॉल की गई फ़ाइलों को रिकॉर्ड करें। आप इस आदेश को दोहरा सकते हैं, भले ही आपने पहले setup.py install :

python setup.py install --record files.txt

जब आप अनइंस्टॉल करना चाहते हैं तो आप बस:

sudo rm $(cat files.txt)

यह काम करता है क्योंकि आरएम कमांड हटाने के लिए फ़ाइलों की एक सफेद जगह-पृथक सूची लेता है और आपका इंस्टॉलेशन रिकॉर्ड सिर्फ ऐसी ही सूची है।





pypi