Где находится virtualenvwrapper.sh после установки pip?

127

Я пытаюсь настроить virtualenvwrapper на OSX, и все инструкции и руководства, которые я нашел, говорят мне добавить исходную команду в .profile, указывая на virtualenvwrapper.sh. Я проверил все каталоги python и site-packages, и не могу найти ни одного virtualenvwrapper.sh. Это что-то мне нужно скачать отдельно? Пип устанавливается неправильно?

Это содержимое /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenvwrapper:

hook_loader.py      hook_loader.pyc     project.py      project.pyc     user_scripts.py     user_scripts.pyc

Как видите, нет virtualenvwrapper.sh. Где это находится?

zakdances
источник

Ответы:

158

Вы можете использовать findкоманду для поиска файла:

find / -name virtualenvwrapper.sh

Это будет искать файл во всех каталогах из корня.


на ubuntu 12.04 LTS, установка через pip, устанавливается в

/usr/local/bin/virtualenvwrapper.sh


на ubuntu 17.04, установка через pip как обычный пользователь, он устанавливается в

~/.local/bin/virtualenvwrapper.sh

dm03514
источник
83

ты уже пробовал это?

$ which virtualenvwrapper.sh
hepidad
источник
это работает, но почему не which virtualenvwrapperработает? Разве это не имя команды в переменных окружения?
zakdances
10
Чтобы помочь любому, кто задает тот же вопрос о том, почему whichне работает, это потому, что virtualenvwrapper фактически использует свой собственный файл завершения bash для добавления чисто виртуальных команд, virtualenvwrapperодна из которых является общей . Следовательно, на диске нет физического файла, на который можно было whichбы указать.
Тим
1
@yourfriendzak, сценарий Баша virtualenvwrapper.shдолжен быть получен в вашей оболочке , прежде чем любой из команд ( mkvirtualenv, rmvirtualenvи т.д.) доступен, то есть $ source /path/to/virtualenvwrapper.sh
tenfishsticks
Это было намного быстрее, findно оба работали. Моя находилась usr/local/binна OS X.
опасный
54

Я просто переустановил его с помощью pip.

sudo pip uninstall virtualenvwrapper
sudo pip install virtualenvwrapper

И на этот раз он поместил его в / usr / local / bin.

user2625596
источник
Это сработало для меня в Ubuntu, также позволив which virtualenvwrapper.shработать, которая ничего не возвращала, пока я не сделал это.
eddiemoya 02
После этой команды в Fedora 23 я обнаружил virtualenvwrapper.sh только в usr / bin.
tomaskazemekas
1
Первоначально установил его, apt-getи он приземлился /usr/share/virtualenvwrapper/virtualenvwrapper.sh, затем очистил его и сделал свое дело.
Hauke
Это сработало для меня в Ubuntu 14.04, если вы find / -name xxxx.shничего не нашли.
alanwsx
48

Точный путь, по которому хранится / расположен файл virtualenvwrapper.sh, зависит от ОС . Даже в одной и той же ОС он меняется от версии к версии. Поэтому нам нужно универсальное решение, которое работает для всех версий ОС.

Самый простой способ найти его путь - это сделать

pip uninstall virtualenvwrapper

Это потребует подтверждения. Скажите «Нет». Но первая строка подтверждения показывает путь к virtualenvwrapper.sh (если вы ответите «Да», запрос покажет список файлов, которые он удалит. Первая запись в этом списке содержит путь к virtualenvwrapper.sh на вашем компьютере)

Анудж Гупта
источник
У меня это не сработало. Я использую Python 2.7.14 с Virtualenv 15.1.0, virtualenvwrapper 4.8.2.
whyisyoung
@whyisyoung: серьезно?
Можете
1
Хороший ярлык. Я использую это даже для других библиотек. Спасибо!
Махеш Вемула
15

или, как я, просто удалите virtualenvwrapper

sudo pip удалить virtualenvwrapper

а затем установите его с помощью easy_install

sudo easy_install virtualenvwrapper

на этот раз я обнаружил установленный файл " /usr/local/bin/virtualenvwrapper.sh " ... До этого я нигде не находил этот файл даже с помощью этой команды

найти / -name virtualenvwrapper.sh

iMitwe
источник
11

В Mac OS

which virtualenvwrapper.sh

ты получил

/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh

и ты можешь

sudo ln /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh /usr/local/bin/virtualenvwrapper.sh

и в твоем .bash_profile

source /usr/local/bin/virtualenvwrapper.sh

или ты можешь

source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
Тяньци Тонг
источник
7

В OS X 10.8.2 с Python 2.7:

/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh

JohnyMoSwag
источник
7

В OSx EI captain я установил virtualenvwrapper как

sudo pip3 install virtualenvwrapper

, однако я не могу найти virtualenvwrapper.sh в /user/local/bin, он был наконец найден по адресу /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.sh, и вы можете сделать мягкую ссылку на / usr / local / bin как

ln -s /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.sh /usr/local/bin/virtualenvwrapper.sh, и все, что вы можете, просто следовать руководству по установке, как это делает официальный документ. Удачи!

Шон Чжан
источник
5

Для меня это было в:

~/Library/Python/2.7/bin/virtualenvwrapper.sh

(С OS X, с pip install --userустановкой)

vmonteco
источник
4

У меня та же проблема. Если у вас более старая версия virtualenvwrapper, pip не будет работать.

загрузите src с http://pypi.python.org/pypi/virtualenvwrapper/3.6 и установите python setup.py. Тогда проблема решена.

Haijin
источник
Работал у меня. Спасибо
Сергей Голин
4

Для дистрибутивов на основе RPM (например, Fedora 19) после выполнения sudo pip install virtualenvwrapperкоманды вы можете найти файл по адресу:

/usr/bin/virtualenvwrapper.sh
Диего душ Сантуш
источник
На Манджаро, в основе арки, она тоже находилась под /usr/binвместо /usr/local/bin. Не знаю почему.
Руэл Рибейро,
3

Установил его с помощью pip на Ubuntu 15.10 с использованием обычного пользователя, он был помещен в ~/.local/bin/virtualenvwrapper.shкоторый я обнаружил, запустив:

$ find / -name virtualenvwrapper.sh 2>/dev/null

Тайфун
источник
2

С помощью

find / -name virtualenvwrapper.sh

Я получил ТОННУ «запрещенных разрешений» и ровно одну распечатку расположения файла. Я пропустил это, пока не нашел это местоположение файла, когда снова удалил / установил его с помощью pip.

Если вам было интересно, это было в

/usr/local/share/python/virtualenvwrapper.sh
Авиенда
источник
2
чтобы избавиться от «отказано в разрешении», вы можете перенаправить STDERR в / dev / null. Например: $ find / -name virtualenvwrapper.sh 2> / dev / null
psycat
2

В моем случае (OSX El Capitan, версия 10.11.5) мне нужно было отредактировать .profile следующим образом:

В терминале:

vim ~ / .profile

export WORKON_HOME=$HOME/.virtualenvs
export MSYS_HOME=C:\msys\1.0
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh                                                                                   

А затем перезагрузите профиль (чтобы он был доступен в текущем сеансе).

источник ~ / .profile

Надеюсь, это кому-то поможет.

Идан Маглед
источник
2

Я могу найти его в macOS Mojave (10.14), играя с virtualenvwrapper-4.8.4

/Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh

svetkesh
источник
1

Хотя это вопрос OS X, вот что у меня сработало в Linux (Red Hat).

Мой virtualwrapper.sh был в

~/.local/bin/virtualenvwrapper.sh

Вероятно, это потому, что я установил virtualenvwrapper локально, используя --userфлаг ...

pip install --user virtualenvwrapper

... в качестве альтернативы рискованной практике использования sudo pip.

jkdev
источник
1
/usr/share/virtualenvwrapper/virtualenvwrapper.sh

Я установил его на Ubuntu 16.04, и он оказался в этом месте.

Лора Холмс
источник
Это случилось и со мной. :(
Силадиття 07
0
/usr/local/bin/virtualenvwrapper.sh
user650654
источник
3
No such file or directoryЯ также просмотрел каталог / usr / local / bin и не нашел ничего, что выглядело бы связанным с virtualenv или virtualenvwrapper
zakdances
0

У меня была такая же проблема с черной костью бигля (Debian).

У меня сработала загрузка пакета и установка вручную.

Sudeep
источник
0

Для Ubuntu.
Если вы только что установили его, проверьте вывод в Терминале, я публикую свой:

Running setup.py install for virtualenv-clone    
Installing virtualenv-clone script to /home/username/.local/bin
Successfully installed virtualenvwrapper virtualenv virtualenv-clone stevedore pbr six
Cleaning up...

Здесь вторая строка указывает путь. Для меня это было в/home/username/.local/bin

abhinavDAIICT
источник
0

pip не будет специально усложнять вам задачу.

Дело в том, что файлы на основе команд всегда устанавливаются в /binпапки, они могут быть где угодно на системном пути.

У меня была такая же проблема, и я обнаружил, что у меня есть эти файлы в моем

~/.local/bin/

папка вместо

/usr/loca/bin/

что является обычным случаем, но я думаю, что они изменили путь по умолчанию на

~ или $ HOME

каталог, потому что он более изолирован для установок pip и обеспечивает различие между пакетами apt-get и пакетами pip.

Итак, подойдя к сути, у вас есть два варианта: вы можете перейти на свой .bashrc и внести такие изменения

# for virtualenv wrapper
export WORKON_HOME=$HOME/Envs
export PROJECT_HOME=$HOME/Devel
source $HOME/.local/bin/virtualenvwrapper.sh

и чем создать каталог virtualenvwrapper под /usr/share/и чем символизировать ваш virtualwrapper_lazy.sh, как это

sudo ln -s ~/.local/bin/virtualenvwrapper_lazy.sh /usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh

и вы можете проверить, работает ли ваша команда workon, в которой будут перечислены ваши существующие virtualenv.

naveen.panwar
источник
0

Если вы выполняете pip install virtualenvwrapperбез sudo как обычный пользовательский пип, он будет работать, но не будет копировать файлы в требуемые места из-за отсутствия разрешений.

mortiz@florida:~# sudo pip3 install virtualenvwrapper

Используйте sudo, и файлы будут созданы по соответствующим путям:

root@florida:/usr/local/bin# ls -ltr
total 8008
-rwxr-xr-x 1 root staff 8136192 Jun 11 17:45 chromedriver
-rwxr-xr-x 1 root staff   41697 Sep  5 16:06 virtualenvwrapper.sh
-rwxr-xr-x 1 root staff    2210 Sep  5 16:06 virtualenvwrapper_lazy.sh
-rwxr-xr-x 1 root staff     215 Sep  5 16:06 pbr
-rwxr-xr-x 1 root staff     218 Sep  5 16:06 virtualenv-clone
-rwxr-xr-x 1 root staff     213 Sep  5 16:06 virtualenv
root@florida:/usr/local/bin# 

Работал у меня над Debian GNU / Linux 9

Мигель Ортис
источник
-1

в моем случае: /home/username/.local/bin/virtualenvwrapper.sh

Юаньсюй Сюй
источник
-2

Вы установили его с помощью sudo? Была ошибка в моем случае.

Брюс
источник