Onde está o virtualenvwrapper.sh após a instalação do pip?

127

Estou tentando configurar o virtualenvwrapper no OSX, e todas as instruções e tutoriais que encontrei me dizem para adicionar um comando de origem ao .profile, apontando para virtualenvwrapper.sh. Eu verifiquei todos os diretórios python e site-packages, e não consigo encontrar nenhum virtualenvwrapper.sh. É algo que preciso baixar separadamente? O pip não está sendo instalado corretamente?

Este é o conteúdo de /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

Como você pode ver, não há virtualenvwrapper.sh. Cadê?

zakdances
fonte

Respostas:

158

Você pode usar o findcomando para procurar um arquivo:

find / -name virtualenvwrapper.sh

Isso procurará em todos os diretórios da raiz o arquivo.


no ubuntu 12.04 LTS, instalando através do pip, ele é instalado no

/usr/local/bin/virtualenvwrapper.sh


no ubuntu 17.04, instalando através do pip como um usuário normal, ele é instalado no

~/.local/bin/virtualenvwrapper.sh

dm03514
fonte
83

você já tentou isso?

$ which virtualenvwrapper.sh
hepidad
fonte
isso funciona, mas por que não which virtualenvwrapperfunciona? Não é esse o nome do comando nas variáveis ​​ambientais?
Zakdances
10
Para ajudar qualquer outra pessoa que faça a mesma pergunta sobre o porquê whichnão funciona, é porque o virtualenvwrapper está realmente usando seu arquivo de conclusão do bash personalizado para adicionar comandos puramente virtuais, dos quais o virtualenvwrappercomando comum é um. Conseqüentemente, não há arquivo físico na unidade para whichapontar.
Tim
1
@yourfriendzak, o script bash virtualenvwrapper.shprecisa ser obtida em seu shell antes de qualquer um dos comandos ( mkvirtualenv, rmvirtualenv, etc.) estão disponíveis, ou seja $ source /path/to/virtualenvwrapper.sh
tenfishsticks
Isso foi muito mais rápido do que, findmas ambos funcionaram. Mina foi localizado em usr/local/binno OS X.
danagerous
54

Acabei de reinstalá-lo com pip.

sudo pip uninstall virtualenvwrapper
sudo pip install virtualenvwrapper

E desta vez ele foi colocado em / usr / local / bin.

user2625596
fonte
Isso funcionou para mim no Ubuntu, permitindo também o which virtualenvwrapper.shtrabalho, que não retornava nada até eu fazer isso.
Eddemoya 02/07
Após este comando no Fedora 23, encontrei o virtualenvwrapper.sh apenas em usr / bin.
21416 Tomaskazemekas
1
Inicialmente o instalou apt-gete aterrissou /usr/share/virtualenvwrapper/virtualenvwrapper.sh, depois o limpou e fez o seu truque.
Hauke
Isso funcionou para mim no Ubuntu 14.04, se você find / -name xxxx.shnão encontrou nada.
Alanwsx
48

O caminho exato em que o virtualenvwrapper.sh está armazenado / localizado varia de sistema operacional para sistema operacional . Mesmo com o mesmo sistema operacional, ele varia de versão para versão. Portanto, precisamos de uma solução genérica que funcione para todas as versões do sistema operacional.

A maneira mais fácil que encontrei para encontrar seu caminho é :

pip uninstall virtualenvwrapper

Isso solicitará uma confirmação. Diga "Não" Mas a primeira linha de confirmação mostra o caminho do virtualenvwrapper.sh (o prompt fornece uma lista de arquivos que serão excluídos, se você disser Sim. A primeira entrada nesta lista contém o caminho para virtualenvwrapper.sh na sua máquina)

Anuj Gupta
fonte
Não funcionou para mim. Estou usando o Python 2.7.14 com o Virtualenv 15.1.0, virtualenvwrapper 4.8.2.
whyisyoung
@whyisyoung: sério? você pode me enviar o direito screen shot depois de executar "pip desinstalação virtualenvwrapper"
Anuj Gupta
1
Bom atalho. Estou usando isso mesmo para outras bibliotecas. Obrigado!
Mahesh Vemula 10/03/19
15

ou, como eu fiz ... apenas desinstale o virtualenvwrapper

desinstalação sudo pip virtualenvwrapper

e instale-o com o easy_install

sudo easy_install virtualenvwrapper

dessa vez encontrei o arquivo " /usr/local/bin/virtualenvwrapper.sh " instalado ... Antes disso, eu não encontrava esse arquivo em nenhum lugar, mesmo por este comando

encontre / -name virtualenvwrapper.sh

iMitwe
fonte
11

No Mac OS

which virtualenvwrapper.sh

você conseguiu

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

e você pode

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

e na sua .bash_profile

source /usr/local/bin/virtualenvwrapper.sh

ou você pode

source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
Tianqi Tong
fonte
7

No OS X 10.8.2, com Python 2.7:

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

JohnyMoSwag
fonte
7

No capitão OSx EI, instalei o virtualenvwrapper como

sudo pip3 install virtualenvwrapper

, no entanto, não consigo encontrar o virtualenvwrapper.sh /user/local/bin, ele foi finalmente encontrado em /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.she você pode criar um link simples para / usr / local / bin como

ln -s /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.sh /usr/local/bin/virtualenvwrapper.sh, e tudo o que você pode seguir o guia de configuração, como faz o documento oficial. Boa sorte!

Shawn Zhang
fonte
5

Para mim foi em:

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

(Com o OS X, com uma pip install --userinstalação)

vmonteco
fonte
4

Eu tenho o mesmo problema. Se você possui uma versão mais antiga do virtualenvwrapper, o pip não funcionará.

faça o download do src em http://pypi.python.org/pypi/virtualenvwrapper/3.6 e na instalação do python setup.py. Então o problema foi resolvido.

haijin
fonte
Trabalhou para mim. Obrigado
Sergey Goliney
4

Para distribuições baseadas em RPM (como o Fedora 19), após executar o sudo pip install virtualenvwrappercomando, você pode encontrar o arquivo em:

/usr/bin/virtualenvwrapper.sh
Diego dos Santos
fonte
Em Manjaro, baseado em arco, também foi localizado em /usr/binvez de /usr/local/bin. Não sei porque.
Reuel Ribeiro
3

Instalei-o usando o pip no Ubuntu 15.10 usando um usuário normal, foi colocado no ~/.local/bin/virtualenvwrapper.shqual encontrei executando:

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

tayfun
fonte
2

Usando

find / -name virtualenvwrapper.sh

Recebi uma tonelada de "permissões negadas" e exatamente uma impressão do local do arquivo. Perdi até encontrar o local do arquivo quando o desinstalei / instalei novamente com o pip.

Caso você estivesse curioso, estava em

/usr/local/share/python/virtualenvwrapper.sh
Aviendha
fonte
2
para se livrar da 'permissão negada', você pode redirecionar o STDERR para / dev / null. Por exemplo: $ find / -name virtualenvwrapper.sh 2> / dev / null
psycat 21/03
2

No meu caso (OSX El Capitan, versão 10.11.5), eu precisava editar o .profile da seguinte forma:

No terminal:

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                                                                                   

E, em seguida, recarregue o perfil (que estará disponível na sessão atual).

source ~ / .profile

Espero que ajude alguém.

Idan Magled
fonte
2

Posso encontrar um no macOS Mojave (10.14) enquanto estiver jogando com o virtualenvwrapper-4.8.4

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

svetkesh
fonte
1

Embora essa seja uma pergunta do OS X, eis o que funcionou para mim no Linux (Red Hat).

Meu virtualwrapper.sh estava em

~/.local/bin/virtualenvwrapper.sh

Provavelmente porque eu instalei o virtualenvwrapper localmente, usando a --userbandeira ...

pip install --user virtualenvwrapper

... como uma alternativa à prática arriscada de usar sudo pip.

jkdev
fonte
1
/usr/share/virtualenvwrapper/virtualenvwrapper.sh

Eu instalei no Ubuntu 16.04 e resultou neste local.

Lora Holmes
fonte
Isso aconteceu comigo também. :(
Siladittya
0
/usr/local/bin/virtualenvwrapper.sh
user650654
fonte
3
No such file or directoryEu também ler o diretório / usr / bin / local e não poderia encontrar qualquer coisa que parecia relacionado com virtualenv ou virtualenvwrapper
zakdances
0

Eu tive o mesmo problema com o beagle bone black (debian).

O download manual do pacote e a instalação funcionaram para mim.

Sudeep
fonte
0

Para Ubuntu
Se você acabou de instalar, verifique a saída no Terminal, estou postando a minha:

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...

Aqui a segunda linha mostra o caminho. Para mim foi em/home/username/.local/bin

abhinavDAIICT
fonte
0

O pip não tentará dificultar as coisas de propósito.

O problema é que os arquivos baseados em comandos sempre são instalados em /binpastas e podem estar em qualquer lugar do caminho do sistema.

Eu tive o mesmo problema e descobri que tenho esses arquivos no meu

~/.local/bin/

pasta em vez de

/usr/loca/bin/

qual é o caso comum, mas acho que eles mudaram o caminho padrão para

~ ou $ HOME

diretório porque é mais isolado para as instalações pip e fornece uma distinção entre pacotes apt-get e pacotes pip.

Então, chegando ao ponto, você tem duas opções aqui ou acessa seu .bashrc e faz alterações como esta

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

e, em seguida, crie um diretório virtualenvwrapper em /usr/share/e depois faça o link simbólico do seu virtualwrapper_lazy.sh assim

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

e você pode verificar se o seu comando workon está funcionando, o que listará seus virtualenvs existentes.

naveen.panwar
fonte
0

Se você executar pip install virtualenvwrappersem o sudo como um usuário normal, o pip será executado, mas não copiará os arquivos nos locais necessários devido à falta de permissões.

mortiz@florida:~# sudo pip3 install virtualenvwrapper

Use sudo e os arquivos serão criados sob seus respectivos caminhos:

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# 

Trabalhou para mim no Debian GNU / Linux 9

Miguel Ortiz
fonte
-1

no meu caso: /home/username/.local/bin/virtualenvwrapper.sh

Yuanxu Xu
fonte
-2

Você o instalou usando o sudo? Foi o erro no meu caso.

Bruce
fonte