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ê?

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


83

você já tentou isso?

$ which virtualenvwrapper.sh

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.


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)


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


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

7

No OS X 10.8.2, com Python 2.7:

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


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!


5

Para mim foi em:

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

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



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

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


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

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.


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


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.


1
/usr/share/virtualenvwrapper/virtualenvwrapper.sh

Eu instalei no Ubuntu 16.04 e resultou neste local.


Isso aconteceu comigo também. :(
Siladittya

0
/usr/local/bin/virtualenvwrapper.sh

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.


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


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.


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


-1

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


-2

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

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.