2012-06-12 4 views
252

Я создал среду с помощью следующей команды: virtualenv venv --distributeКак удалить/удалить virtualenv?

Я не могу удалить его с помощью следующей команды: rmvirtualenv venv - Это часть virtualenvwrapper как упомянуто в answer below for virtualenvwrapper

я делаю ls на мой ток каталог и я все еще вижу venv

единственный способ, которым я могу удалить его, кажется: sudo rm -rf venv

Обратите внимание, что среда не активна. Я запускаю Ubuntu 11.10. Есть идеи? Я попытался перезагрузить мою систему безрезультатно.

+2

Какая у вас проблема просто удалить его (без 'sudo')? И почему вы думаете, что перезагрузка поможет? –

+7

Просто удалите каталог. – nathancahill

+0

honk: sudo rmvirtualenv venv не является допустимой командой. Не уверен, почему я думал, что перезагрузка поможет. Я совершенно новый, честный. – sudostack

ответ

223

Вот и все! Нет команды для удаления вашей виртуальной среды. Просто отключите его и избавьте свое применение от своих артефактов, рекурсивным удалением его.

+10

Стоит отметить, что если вы используете pip для установки зависимостей, вам может потребоваться, чтобы pip заморозил список зависимостей и сохранил в каталоге верхнего уровня. Если позже вы решите развернуть свое приложение, у вас не будет проблем. –

+4

Почему это принято и с таким большим количеством голосов, когда правильный ответ просто рев? Возможно, это было для более старой версии virtualenvwarpper. – jsbueno

+4

@jsbueno. Он использовал virtualenv, а не virtualenvwrapper (это не та же программа). В то время virtualenv не обеспечивал интерфейс для очистки; вы должны были сделать это сами. –

130

Просто, чтобы повторить то, что ранее было прокомментировано @skytreader, rmvirtualenv - это команда, предоставляемая virtualenvwrapper, а не virtualenv. Возможно, у вас не установлено virtualenvwrapper?

Для получения более подробной информации см. VirtualEnvWrapper Command Reference.

26

Вы можете удалить все зависимости путем рекурсивного удаления всех них, а затем удалить venv.

Редактировать включая Isaac Turner комментарии

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

Я думаю, что вам не хватает' deactivate' перед 'rm -r venv /' –

+0

И * критически * делать это, только если вы не используете 'pip' системы! (В противном случае вы удалите все системные пакеты.) – orome

9

Просто удалите виртуальную среду из без специальной команды system.there для его

rm -rf venv 
33

rmvirtualenv

Удалить среду, в WORKON_HOME.

Синтаксис:

rmvirtualenv ENVNAME 

Вы должны использовать деактивировать перед удалением текущей среды.

$ rmvirtualenv my_env 

Ссылка: http://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

+1

Ваш ответ проще и лучше. haha –

+1

есть даже поддержка '' tab'' для этого! – muon

+4

Обратите внимание, что этот ответ неверен, поскольку ОП никогда не говорил, что у них есть 'virtualenvwrapper' – KevinDTimm

1

если вы окна пользователь, то это в C: \ Users \ имя_пользователя \ Envs. Вы можете удалить его оттуда.

Также попробуйте ввести команду командной строки rmvirtualenv.

Я попытался с помощью командной строки, поэтому он сказал, что он удален, но он все еще существовал. Поэтому я вручную удаляю его.

+0

На самом деле это неверно. Местоположение виртуальной среды действительно зависит от того, где вы выполняете команду 'virtualenv'. Например: 'C: \> virtualenv my_awesome_venv' создаст виртуальную среду в' C: \ my_awesome_venv'. – Felix

+0

Я говорил о виртуальной паутине.Моя ошибка – jahmed31

+0

вы были правы, у меня была та же проблема –

-2

так, я сделал немного google, но ни один из ответов не был удовлетворительным.

Но случайно, прокручивая страницы man pip (утилита для установки поддерживаемых python пакетов - virtualenv является одним из них), было задокументировано использование ключевого слова «удалить» с помощью pip, ниже - точный вывод прямо из моего терминала


indresh-VBX] **$ sudo pip uninstall virtualenv** 

каталог «/home/indresh/.cache/pip/http» или его родительский каталог не принадлежит текущему пользователю и кэш отключен. Проверьте разрешения и владельца этого каталога. Если вы используете pud с sudo, вам может понадобиться флаг sudo -H.

Uninstalling virtualenv-15.1.0: 
    /usr/bin/virtualenv 

    /usr/local/bin/virtualenv 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/DESCRIPTION.rst 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/INSTALLER 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/METADATA 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/RECORD 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/WHEEL 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/entry_points.txt 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/metadata.json 
    /usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0.dist-info/top_level.txt 
    /usr/local/lib/python2.7/dist-packages/virtualenv.py 
    /usr/local/lib/python2.7/dist-packages/virtualenv.pyc 
    /usr/local/lib/python2.7/dist-packages/[email protected]_support/__init__.py 
    /usr/local/lib/python2.7/dist-packages/virtualenv_support/__init__.pyc 
    /usr/local/lib/python2.7/dist-packages/virtualenv_support/argparse-1.4.0-py2.py3-none-any.whl 
    /usr/local/lib/python2.7/dist-packages/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl 
    /usr/local/lib/python2.7/dist-packages/virtualenv_support/setuptools-28.8.0-py2.py3-none-any.whl 
    /usr/local/lib/python2.7/dist-packages/virtualenv_support/wheel-0.29.0-py2.py3-none-any.whl 
Proceed (y/n)? y 
    Successfully uninstalled virtualenv-15.1.0 
The directory '/home/indresh/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. 
-------------------------------- 
+0

Вопрос OP заключается в том, как удалить virtualenv, а не как удалить виртуальный пакет. – snakecharmerb

-1

deactivate - это команда, которую вы ищите. Как уже было сказано, нет никакой команды для удаления вашей виртуальной среды. Просто отключите его!

1

Я использовал pyenv uninstall my_virt_env_name, чтобы удалить среду вирусов.

Примечание: Я использую pyenv-virtualenv, установленный через установочный скрипт.

0

из официального документа virtualenv в https://virtualenv.pypa.io/en/stable/userguide/

Удаление среды

Удаление виртуальной среды просто сделать, отключив его и удалить папку среды со всем содержимым:

(ENV)$ deactivate 
$ rm -r /path/to/ENV 
Смежные вопросы