Conda ortamını kaldırma


225

Conda ile oluşturulan belirli bir ortamı kaldırmak istiyorum. Bunu nasıl başarabilirim? Diyelim ki aktif bir test ortamım var. Belgeleri takip ederek aşağıdakileri denedim :

$ conda env remove

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

Daha sonra devre dışı bırakıyorum:

$ source deactivate

Kaldırma komutunu yeniden çalıştırmayı deniyorum ve hala aynı hatayı alıyorum. Burada yanlış giden ne?


2
Terminali yönetici olarak çalıştırdığınızdan emin olun, aksi takdirde komutlar herhangi bir hata atmadan başarıyla çalışır, ancak env kaldırılmaz.
जयते जयते

Yanıtlar:


310

Muhtemelen Conda ortamını tamamen devre dışı bırakmadınız - unutmayın, Conda ile kullanmanız gereken komut conda deactivate(eski sürümler için, kullanım source deactivate). Bu nedenle, yeni bir kabuk başlatmak ve denemeden önce ortamı etkinleştirmek akıllıca olabilir. Ardından devre dışı bırakın.

Komutu kullanabilirsiniz

conda env remove -n ENV_NAME

bu adla ortamı kaldırmak için. ( --nameeşdeğerdir -n)

Ayrıca yer ortamları her yerde kullanarak istediğiniz anlamına Not -p /path/to/envyerine -n ENV_NAMEhem oluşturma ve istediğiniz takdirde ortamları silerken. Onlar yok olması için Conda kurulumda yaşamak.

GÜNCELLEME, 30 Ocak 2019 : Conda 4.6'dan itibaren conda activatekomut, tüm platformlarda bir ortamı etkinleştirmenin yeni resmi yolu haline gelir. Değişiklikler bu Anaconda blog yazısında açıklanmıştır


Haklısın, yazıyı yazarken benim hatam. Demek istedim source deactivate. Teşekkür ederim
Renato Damas

4
Aslında siz de kullanabilirsiniz conda deactivateve aynı şekilde çalışır. En azından 4.4.11 versiyonunda
Renato Damas

Teşekkürler. Ama sadece deactivatekendi başına değil, değil mi?
holdenweb

Evet ya source deactivatedaconda deactivate
Renato Damas

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

68

Ortamınızın etkin olmadığından emin olduktan sonra şunu yazın:

$ conda env remove --name ENVIRONMENT

3
Bu ihtiyacım olan bilgidir. Eğer conda env --helpvermiş olsaydı güzel olurdu .
R. Schreurs

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

1
Yardım metnini güncelleme hataları hakkında bir hata gönderdim ve yeni başlayanlar için kolay bir sorun olarak işaretlendi, bu yüzden bir düzeltme umudu var.
holdenweb

28

Resmi dokümantasyon yöntemi benim için çalıştı:

conda remove --name myenv --all

Veya sadece conda env remove --name myenv.

Ortamın kaldırıldığını doğrulamak için, terminal pencerenizde veya Anaconda İsteminde şunu çalıştırın:

conda info --envs

Görüntülenen ortamlar listesi, kaldırılan ortamı göstermemelidir.

Anaconda3 enviroments klasörünüz, anaconda3 kurulum klasörünüzde silinen ortamın boş bir klasörünü listeleyebilir:

/opt/anaconda3/envs

19

Bunu başarmanın 3 yolu var. Adında bir ortamınız olduğunu varsayarsak myenv,

  1. conda env remove --name myenv, -nkısayoludur --name.

  2. conda remove --name myenv --all.

  3. Env klasörünü doğrudan silin. (Tavsiye edilmez)

    # 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

Tekrar kontrol etmenizi istemeden ortamı silmek istiyorsanız. İçin -ykısayol kullanın --yes. (Global kullanım için conda'daki sessiz istemi kontrol edin )

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

Referanslar

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

1
Peki neden env klasörünü silmek doğrudan önerilmez? Ne yanlış gidebilir ki?
NoName


13

Öncelikle ortamınızı çıkarmadan önce devre dışı bırakmanız gerekir. Aşağıdaki komutu kullanarak conda ortamını kaldırabilirsiniz

Ortam adınızın "sample_env" olduğunu varsayalım, bu ortamı kullanarak

source deactivate    
conda remove -n sample_env --all

'--all' tüm bağımlılıkları kaldırmak için kullanılacak


13

--prefixVeya -pişaretiyle oluşturulan ortamlar -pişaretle ( değil -n ) kaldırılmalıdır .

Örneğin: conda remove -p </filepath/myenvironment> --all, ki burada </filepath/myenvironment>çevre için tam ya da göreli yol ile ikame edilir.


1
Çevre adımda env gibi bir boşluk vardı . Bu yöntem, conda env remove -p path/to/my\ envsüre çalıştı conda env remove -n my\ envve işe conda env remove -n "my env"yaramadı.
Ben


8

source deactivateKaldırmadan önce ortamı devre dışı bırakmak için kullanın , ENV_NAME ürününü kaldırmak istediğiniz ortamla değiştirin:

source deactivate
conda env remove -n ENV_NAME

7
Bir açıklama, bir kodun ne yaptığı ve bunun sorudaki sorunu nasıl ele aldığı, nadiren bir cevabı geliştirmede başarısız olur.
MBT

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

7

Önce çevreyi devre dışı bırakın ve temel ortama geri dönün. Tabandan komutu çalıştırabilmelisiniz conda env remove -n <envname>. Bu size mesaj verecektir

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


6

İçinde ise baz :

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

env_name tarafından kaldır :

conda env remove -n env_name

zaten env_name ortamındaysanız:

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

devre dışı bırak ve ardından kaldır:

conda deactivate env_name

conda env remove -n env_name

4

Bu benim için çalıştı:

conda env remove --name tensorflow

Benim için de çalıştı. conda env remove --name <name of your environment> Daha sonra çevre klasörünü Anaconda veya miniconda kurulum konumundan Anaconda\envs\<name of your environment>veyaMiniconda\envs\<name of your environment>
Pawar

1

Conda ortamının tamamını kaldırmak için:

conda kaldır - adı YOUR_CONDA_ENV_NAME - tüm


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.