कॉनडा पर्यावरण को हटा रहा है


224

मैं कोंडा के साथ बनाए गए एक निश्चित वातावरण को हटाना चाहता हूं। मैं उसे कैसे प्राप्त कर सकता हूं? मान लीजिए कि मेरे पास एक सक्रिय वृषण पर्यावरण है। मैंने कोशिश की, प्रलेखन का पालन ​​करके :

$ conda env remove

CondaEnvironmentError: cannot remove current environment. deactivate and run conda remove again

मैं तब इसे निष्क्रिय करता हूं:

$ source deactivate

मैं इसे हटाने के लिए फिर से कमांड चलाने की कोशिश करता हूं और मुझे अभी भी वही त्रुटि मिलती है। यहां क्या गलत हो रहा है?


2
सुनिश्चित करें कि आप टर्मिनल को व्यवस्थापक के रूप में चला रहे हैं अन्यथा कमांड बिना किसी त्रुटि के सफलतापूर्वक चलेंगे, लेकिन env को हटाया नहीं जाएगा।
सत्यमेव जयते

जवाबों:


310

आप शायद कोनडा पर्यावरण को पूरी तरह से निष्क्रिय नहीं कर रहे हैं - याद रखें, कोनदा के साथ आपको जिस कमांड का उपयोग करने की आवश्यकता है conda deactivate(पुराने संस्करणों के लिए, उपयोग करें source deactivate)। तो यह एक नया खोल शुरू करने और उस वातावरण को सक्रिय करने में बुद्धिमानी हो सकती है जब आप कोशिश करते हैं। फिर इसे डीएक्टिवेट करें।

आप कमांड का उपयोग कर सकते हैं

conda env remove -n ENV_NAME

उस नाम के साथ पर्यावरण को हटाने के लिए। ( --nameइसके बराबर है -n)

ध्यान दें कि यदि आप चुनते हैं तो वातावरण बनाने और हटाने दोनों के -p /path/to/envबजाए आप कहीं भी वातावरण का उपयोग कर -n ENV_NAMEसकते हैं। वे नहीं करते है अपने conda स्थापना में रहते हैं।

UPDATE, 30 जनवरी 2019 : कॉनडा 4.6 के बाद से conda activateकमांड सभी प्लेटफार्मों में एक पर्यावरण को सक्रिय करने का नया आधिकारिक तरीका बन गया है। इस एनाकोंडा ब्लॉग पोस्ट में परिवर्तनों का वर्णन किया गया है


आप सही हैं, पोस्ट लिखते समय मेरी गलती। मेरा मतलब था source deactivate। धन्यवाद
रेनाटो डमास

4
वास्तव में आप भी उपयोग कर सकते हैं conda deactivateऔर यह इसी तरह काम करता है। कम से कम संस्करण में 4.4.11
रेनाटो

धन्यवाद। लेकिन सिर्फ deactivateअपने दम पर ही नहीं ?
होल्डनवेब

हाँ, या तो source deactivateयाconda deactivate
रेनाटो डमास

EnvironmentLocationNotFound: Not a conda environment: /home/user/.conda/envs/ENVIRONMENT
user924

68

यह सुनिश्चित करने के बाद कि आपका वातावरण सक्रिय नहीं है, टाइप करें:

$ conda env remove --name ENVIRONMENT

3
यह मेरी जरूरत की जानकारी है। अच्छा होता अगर conda env --helpदिया होता।
आर। श्रेयर्स

EnvironmentLocationNotFound: Not a conda environment: /home/user/.conda/envs/ENVIRONMENT
user924

1
मैंने मदद पाठ को अपडेट करने में विफलताओं के बारे में एक बग प्रस्तुत किया है, और इसे शुरुआती लोगों के लिए एक आसान मुद्दे के रूप में चिह्नित किया गया था, इसलिए इसमें सुधार की उम्मीद है।
होल्डनवेब

28

आधिकारिक प्रलेखन तरीका मेरे लिए काम किया:

conda remove --name myenv --all

या बस conda env remove --name myenv

यह सत्यापित करने के लिए कि आपकी टर्मिनल विंडो या एनाकोंडा प्रॉम्प्ट में, पर्यावरण को हटा दिया गया है, चलाएं:

conda info --envs

पर्यावरण सूची जो प्रदर्शित करती है उसे हटाए गए वातावरण को नहीं दिखाना चाहिए।

आप एनाकोंडा 3 एनवायर्नमेंट फ़ोल्डर अपने एनाकोंडा 3 इंस्टॉलेशन फोल्डर में हटाए गए वातावरण के एक खाली फ़ोल्डर को सूचीबद्ध कर सकते हैं, जैसे:

/opt/anaconda3/envs

19

कुल मिलाकर इसे प्राप्त करने के 3 तरीके हैं। मान लिया जाए कि आपका नाम पर्यावरण है myenv,

  1. conda env remove --name myenv, के -nलिए शॉर्टकट है --name

  2. conda remove --name myenv --all

  3. सीधे एनवी फोल्डर को डिलीट करें। (सिफारिश नहीं की गई)

    # list environments and their locations
    conda env list
    # or
    # conda info --envs
    
    # delete the folder listed
    rm -rf /Users/username/.local/share/conda/envs/myenv

यदि आप फिर से जाँच करने के लिए एक संकेत के बिना पर्यावरण को नष्ट करना चाहते हैं । का उपयोग करें -y, के लिए शॉर्टकट --yes। (वैश्विक उपयोग के लिए कोंडा में साइलेंट प्रॉम्प्ट की जाँच करें )

conda env remove -n myenv -y
conda remove -n myenv --all -y

संदर्भ

  • conda env --help
  • conda remove --help

1
और env फ़ोल्डर को सीधे हटाने की अनुशंसा क्यों नहीं की जाती है? क्या गलत होने की सम्भावना है?
NoName


13

सबसे पहले आपको इसे हटाने से पहले अपने पर्यावरण को निष्क्रिय करना होगा। आप निम्न कमांड का उपयोग करके कोंडा पर्यावरण को हटा सकते हैं

मान लीजिए कि आपका पर्यावरण नाम "नमूना_सेनव" है, तो आप उपयोग करके इस वातावरण को निकाल सकते हैं

source deactivate    
conda remove -n sample_env --all

सभी निर्भरताओं को दूर करने के लिए '--all' का उपयोग किया जाएगा


13

--prefixया -pध्वज के साथ बनाया गया वातावरण -pध्वज ( नहीं -n ) के साथ हटाया जाना चाहिए ।

उदाहरण के लिए: conda remove -p </filepath/myenvironment> --allजिसमें </filepath/myenvironment>पर्यावरण के लिए एक पूर्ण या सापेक्ष पथ के साथ प्रतिस्थापित किया जाता है।


1
मेरे पर्यावरण के नाम में एक जगह शामिल है, जैसे कि मेरी एनवी । इस विधि, conda env remove -p path/to/my\ envजबकि काम किया conda env remove -n my\ envऔर conda env remove -n "my env"नहीं किया।
बेन

11

मेरा पर्यावरण का नाम है: परीक्षण

conda remove -n test --all

8

source deactivateइसे हटाने से पहले पर्यावरण को निष्क्रिय करने के लिए उपयोग करें , ENV_NAME को उस पर्यावरण से बदलें, जिसे आप निकालना चाहते हैं:

source deactivate
conda env remove -n ENV_NAME

7
एक स्पष्टीकरण, एक कोड क्या करता है और यह सवाल में समस्या को कैसे संबोधित करता है, शायद ही कभी एक उत्तर को बेहतर बनाने में विफल रहता है।
एमबीटी

EnvironmentLocationNotFound: Not a conda environment: /home/user/.conda/envs/ENV_NAME
user924

7

पहले पर्यावरण को निष्क्रिय करें और आधार पर्यावरण पर वापस आएं। आधार से, आपको कमांड चलाने में सक्षम होना चाहिए conda env remove -n <envname>। यह आपको संदेश देगा

Remove all packages in environment C:\Users\<username>\AppData\Local\Continuum\anaconda3\envs\{envname}:


5

यदि आप आधार में हैं :

(base) HP-Compaq-Elite-8300-CMT:~$ 

द्वारा env_name निकालें :

conda env remove -n env_name

यदि आप पहले से ही env_name वातावरण में हैं:

(env_name) HP-Compaq-Elite-8300-CMT:~$ 

फिर से निष्क्रिय करें:

conda deactivate env_name

conda env remove -n env_name

4

यह मेरे लिए काम किया:

conda env remove --name tensorflow

मेरे लिए भी काम किया। conda env remove --name <name of your environment> बाद में आप एनाकोंडा या मिनिकोंडा स्थापित स्थान से पर्यावरण फ़ोल्डर को हटा सकते हैं Anaconda\envs\<name of your environment>याMiniconda\envs\<name of your environment>
गिरिराज पवार


0

क्योंकि आप केवल सक्रिय वातावरण को निष्क्रिय कर सकते हैं, इसलिए conda निष्क्रिय करने की आवश्यकता नहीं है और न ही तर्कों को स्वीकार करना चाहिए। त्रुटि संदेश यहाँ बहुत स्पष्ट है।

बस कॉल करें conda को निष्क्रिय करें https://github.com/conda/conda/issues/7296#issuecomment-389504269

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.