¿Cómo elimino/elimino un virtualenv?

5 minutos de lectura

avatar de usuario de wulymammoth
wulymamut

Creé un entorno con el siguiente comando: virtualenv venv --distribute

Intentando eliminarlo con el siguiente comando: rmvirtualenv venv No funciona.

hago un lsen mi directorio actual y todavía veo venv

La única forma en que puedo eliminarlo parece ser: sudo rm -rf venv

Tenga en cuenta que el entorno no está activo. Estoy ejecutando Ubuntu 11.10. ¿Algunas ideas? He intentado reiniciar mi sistema sin éxito.

  • Simplemente elimine el directorio.

    – nathancahill

    12 de junio de 2012 a las 21:57

  • bocinazo: sudo rmvirtualenv venv no es un comando válido. No estoy seguro de por qué pensé que un reinicio ayudaría. Soy bastante nuevo, para ser honesto.

    – mamut wuly

    12 de junio de 2012 a las 21:57

  • Tenga en cuenta que rmvirtualenv viene con virtualenvwrapper. Necesitas eso instalado para que funcione.

    – caminante del cielo

    7 de abril de 2013 a las 4:34

  • Tenga en cuenta que también puede eliminar todos los paquetes instalados actualmente, pero mantenga el entorno virtual en sí mismo si tiene instalado virtualenvwrapper: $ virtualenv --clear path_to_my_venv. Lo uso de vez en cuando para asegurarme de que no tengo nada instalado manualmente, como una antigua dependencia que ya no está en requirements.txt.

    – Taylor D. Edmiston

    15 de abril de 2015 a las 16:08

  • El sudo no debería ser necesario en circunstancias normales. El objetivo de un entorno virtual es que puede manipularlo utilizando su cuenta de usuario habitual.

    – triplete

    13 de abril de 2019 a las 14:46

Avatar de usuario de Thomas Anthony
tomás antonio

La única forma en que puedo eliminarlo parece ser: sudo rm -rf venv

¡Eso es todo! No hay ningún comando para eliminar su entorno virtual. Simplemente desactívelo y elimine su aplicación de sus artefactos eliminándolo recursivamente.

Tenga en cuenta que esto es lo mismo independientemente del tipo de entorno virtual que esté utilizando. virtualenv, venventorno de anaconda, pyenv, pipenv todos se basan en el mismo principio aquí.

  • Vale la pena señalar que si está utilizando pip para instalar dependencias, es posible que desee congelar pip una lista de dependencias y mantenerla en el directorio de nivel superior. Si luego elige implementar su aplicación, no tendrá ningún problema.

    – Tomás Antonio

    12 de junio de 2012 a las 22:18

  • ¿Por qué se acepta esto y con tantos votos, cuando la respuesta correcta está justo debajo? Tal vez esto fue para una versión anterior de virtualenvwarpper

    – jsbueno

    28 de agosto de 2015 a las 15:11

  • @jsbueno Estaba usando virtualenv, no virtualenvwrapper (no son el mismo programa). En ese momento, virtualenv no proporcionaba una interfaz para la limpieza; tenías que hacerlo tú mismo.

    – Tomás Antonio

    23 de enero de 2016 a las 2:12

  • Si ha creado un virtualenv en un repositorio de git (y los archivos no se ignoran): git clean -dffx

    –Rex Hardin

    22 de febrero de 2018 a las 3:35

  • De una edición sugerida: “Creo que esto no es estrictamente válido para entornos conda, ya que Anaconda realiza otros cambios en el sistema de archivos que no serán cubiertos por ‘rm -rf…’, por ejemplo, el archivo environment.txt específico del usuario también puede necesitar ser editado?”

    – pimienta

    10/03/2022 a las 21:33

Solo para repetir lo que @skytreader había comentado anteriormente, rmvirtualenv es un comando proporcionado por virtualenvwrapperno virtualenv. Tal vez no tuviste virtualenvwrapper instalado?

Ver Referencia de comandos de VirtualEnvWrapper para más detalles.

Avatar de usuario de Antoniazzi
antoniazzi

rmvirtualenv es un comando para virtualenvwrapper. No funcionará si no lo tienes instalado.

Usando virtualenvwrapper, para eliminar un entorno, en el $WORKON_HOME:

Sintaxis:

rmvirtualenv ENVNAME

Debe utilizar deactivate antes de eliminar el entorno actual.

$ rmvirtualenv my_env

Referencia: http://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

  • hay incluso tab soporte de finalización para esto!

    – muón

    8 de febrero de 2017 a las 19:47

Avatar de usuario de Dawn T Cherian
amanecer t cherian

Puede eliminar todas las dependencias desinstalándolas recursivamente y luego eliminando el archivo venv.

source venv/bin/activate
pip freeze > requirements.txt
pip uninstall -r requirements.txt -y
deactivate
rm -r venv/

Si está utilizando pyenv, es posible eliminar su entorno virtual:

$ pyenv virtualenv-delete <name>

  • También puedes ejecutar pyenv uninstall <name> como comando equivalente

    – Jorge

    22 oct 2021 a las 10:10

  • @giorgio en mi caso pyenv uninstall <name> solo eliminó el enlace simbólico de ~/.pyenv/versions/dejando el medio ambiente intacto en ~/.pyenv/versions/<version>/envs/<name> (el mismo efecto que rm -rf ~/.pyenv/versions/<name> tiene). El método de Christiaan Herrewijn funciona como se esperaba.

    – Daniel F.

    14 oct 2022 a las 11:04


  • Necesito corregirme: en algunos sistemas pyenv uninstall <name> funciona como se esperaba, en algunos solo elimina el enlace simbólico. Todavía tengo que averiguar por qué.

    – Daniel F.

    14 oct 2022 a las 11:24

Avatar de usuario de Moot
Discutible

Simplemente elimine el entorno virtual del sistema:

rm -rf venv

(No hay un comando especial para ello)

  • También puedes ejecutar pyenv uninstall <name> como comando equivalente

    – Jorge

    22 oct 2021 a las 10:10

  • @giorgio en mi caso pyenv uninstall <name> solo eliminó el enlace simbólico de ~/.pyenv/versions/dejando el medio ambiente intacto en ~/.pyenv/versions/<version>/envs/<name> (el mismo efecto que rm -rf ~/.pyenv/versions/<name> tiene). El método de Christiaan Herrewijn funciona como se esperaba.

    – Daniel F.

    14 oct 2022 a las 11:04


  • Necesito corregirme: en algunos sistemas pyenv uninstall <name> funciona como se esperaba, en algunos solo elimina el enlace simbólico. Todavía tengo que averiguar por qué.

    – Daniel F.

    14 oct 2022 a las 11:24

Avatar de usuario de Moot
Discutible

del documento oficial de virtualenv https://virtualenv.pypa.io/en/latest/user_guide.html

Eliminación de un entorno

La eliminación de un entorno virtual se realiza simplemente desactivándolo y eliminando la carpeta del entorno con todo su contenido:

(ENV)$ deactivate
$ rm -r /path/to/ENV

  • @Sébastien No, no deberías necesitar sudo o privilegios similares a menos que también los haya utilizado para configurar el entorno en primer lugar, lo que normalmente sería un error.

    – triplete

    13 de abril de 2019 a las 14:40


¿Ha sido útil esta solución?