Di mana virtualenvwrapper.sh setelah pemasangan pip?

127

Saya mencoba mengatur virtualenvwrapper di OSX, dan semua instruksi dan tutorial yang saya temukan memberitahu saya untuk menambahkan perintah sumber ke .profile, menunjuk ke virtualenvwrapper.sh. Saya telah memeriksa semua direktori python dan paket situs, dan saya tidak dapat menemukan virtualenvwrapper.sh. Apakah ini sesuatu yang perlu saya unduh secara terpisah? Apakah pip tidak dipasang dengan benar?

Ini adalah isi dari /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

Seperti yang Anda lihat, tidak ada virtualenvwrapper.sh. Dimana itu?

zakdance
sumber

Jawaban:

158

Anda dapat menggunakan findperintah untuk mencari file:

find / -name virtualenvwrapper.sh

Ini akan mencari semua direktori dari root untuk file tersebut.


pada ubuntu 12,04 LTS, instal melalui pip, diinstal ke

/usr/local/bin/virtualenvwrapper.sh


pada ubuntu 17.04, menginstal melalui pip sebagai pengguna normal, itu diinstal ke

~/.local/bin/virtualenvwrapper.sh

dm03514
sumber
83

apakah kamu sudah mencoba ini?

$ which virtualenvwrapper.sh
hepidad
sumber
ini bekerja, tetapi mengapa tidak which virtualenvwrapperberhasil? Bukankah itu nama perintah dalam variabel lingkungan?
zakdances
10
Untuk membantu orang lain yang menanyakan pertanyaan yang sama tentang mengapa whichini tidak berhasil, itu karena virtualenvwrapper sebenarnya menggunakan file penyelesaian bash khusus untuk menambahkan perintah virtual murni, yang mana virtualenvwrapperperintah umumnya adalah satu. Akibatnya, tidak ada file fisik pada drive untuk whichmenunjuk ke.
Tim
1
@yourfriendzak, yang bash script virtualenvwrapper.shperlu bersumber di shell Anda sebelum salah satu perintah ( mkvirtualenv, rmvirtualenv, dll) yang tersedia, yaitu $ source /path/to/virtualenvwrapper.sh
tenfishsticks
Ini jauh lebih cepat daripada findtetapi keduanya bekerja. usr/local/bin
Milik
54

Saya baru saja menginstal ulang dengan pip.

sudo pip uninstall virtualenvwrapper
sudo pip install virtualenvwrapper

Dan kali ini meletakkannya di / usr / local / bin.

pengguna2625596
sumber
Ini bekerja untuk saya di Ubuntu, juga memungkinkan which virtualenvwrapper.shuntuk bekerja, yang tidak mengembalikan apa pun sampai saya melakukan ini.
eddiemoya
Setelah perintah ini pada Fedora 23 saya hanya menemukan virtualenvwrapper.sh di usr / bin.
tomaskazemekas
1
Pada awalnya menginstalnya dengan apt-getdan mendarat /usr/share/virtualenvwrapper/virtualenvwrapper.sh, kemudian membersihkannya dan melakukan trik Anda.
Hauke
Ini bekerja untuk saya di Ubuntu 14.04 jika Anda find / -name xxxx.shtidak menemukan apa pun.
alanwsx
48

Jalur persis di mana virtualenvwrapper.sh disimpan / terletak bervariasi dari OS ke OS . Bahkan dengan OS yang sama, bervariasi dari versi ke versi. Jadi kita membutuhkan solusi generik yang berfungsi untuk semua versi OS.

Cara termudah yang saya temukan untuk menemukan jalannya adalah : Lakukan

pip uninstall virtualenvwrapper

Ini akan meminta konfirmasi. Katakan "Tidak" Tapi baris konfirmasi pertama menunjukkan jalur virtualenvwrapper.sh (Prompt memberikan daftar file yang akan dihapus, jika Anda menjawab Ya. Entri pertama dalam daftar ini berisi jalur ke virtualenvwrapper.sh di mesin Anda)

Anuj Gupta
sumber
Itu tidak berhasil untuk saya. Saya menggunakan Python 2.7.14 dengan Virtualenv 15.1.0, virtualenvwrapper 4.8.2.
whyisyoung
@whyyoyoung: serius? dapatkah Anda mengirimkan tangkapan layar tepat setelah Anda menjalankan "pip uninstall virtualenvwrapper"
Anuj Gupta
1
Pintasan yang bagus. Saya menggunakan ini bahkan untuk perpustakaan lain. Terima kasih!
Mahesh Vemula
15

atau, seperti yang saya lakukan..hanya uninstall virtualenvwrapper

sudo pip uninstall virtualenvwrapper

dan kemudian instal dengan easy_install

sudo easy_install virtualenvwrapper

kali ini saya menemukan file " /usr/local/bin/virtualenvwrapper.sh " terinstal ... Sebelumnya saya tidak menemukan file itu di mana pun bahkan dengan perintah ini

temukan / -nama virtualenvwrapper.sh

iMitwe
sumber
11

Di Mac OS

which virtualenvwrapper.sh

kamu dapat

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

dan kamu bisa

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

dan di .bash_profile

source /usr/local/bin/virtualenvwrapper.sh

atau kamu bisa

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

Di OS X 10.8.2, dengan Python 2.7:

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

JohnyMoSwag
sumber
7

Di OSx EI captain, saya menginstal virtualenvwrapper as

sudo pip3 install virtualenvwrapper

, namun saya tidak dapat menemukan virtualenvwrapper.sh di /user/local/bin, akhirnya ditemukan di /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.sh, dan Anda dapat membuat tautan lunak ke / usr / local / bin sebagai

ln -s /Library/Frameworks/Python.framework/Versions/3.4/bin/virtualenvwrapper.sh /usr/local/bin/virtualenvwrapper.sh, dan semua yang Anda bisa ikuti panduan pengaturan seperti dokumen resmi. Semoga berhasil!

Shawn Zhang
sumber
5

Bagi saya itu di:

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

(Dengan OS X, dengan pip install --userinstalasi)

vmonteco
sumber
4

Saya memiliki masalah yang sama. Jika Anda memiliki versi virtualenvwrapper yang lebih lama, maka pip tidak akan berfungsi.

unduh src dari http://pypi.python.org/pypi/virtualenvwrapper/3.6 dan instal python setup.py. Kemudian masalah terpecahkan.

haijin
sumber
Bekerja untukku. Terima kasih
Sergey Goliney
4

Untuk distribusi berbasis RPM (seperti Fedora 19), setelah menjalankan sudo pip install virtualenvwrapperperintah, Anda dapat menemukan file di:

/usr/bin/virtualenvwrapper.sh
Diego dos Santos
sumber
Pada Manjaro, lengkungan berdasarkan, itu juga terletak di bawah /usr/binbukan /usr/local/bin. Saya tidak tahu kenapa.
Reuel Ribeiro
3

Diinstal menggunakan pip di Ubuntu 15.10 menggunakan pengguna normal, itu dimasukkan di ~/.local/bin/virtualenvwrapper.shmana saya temukan dengan menjalankan:

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

tayfun
sumber
2

Menggunakan

find / -name virtualenvwrapper.sh

Saya mendapat TON "izin ditolak", dan persis satu cetakan lokasi file. Saya melewatkannya sampai saya menemukan lokasi file itu ketika saya menghapus / menginstalnya lagi dengan pip.

Jika Anda penasaran, itu masuk

/usr/local/share/python/virtualenvwrapper.sh
Aviendha
sumber
2
untuk menghilangkan 'izin ditolak' Anda dapat mengarahkan STDERR ke / dev / null. Sebagai contoh: $ find / -name virtualenvwrapper.sh 2> / dev / null
psycat
2

Dalam kasus saya (OSX El Capitan, versi 10.11.5) saya perlu mengedit .profile seperti:

Di terminal:

vim ~ /. profil

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

Dan kemudian memuat kembali profil (itu akan tersedia di sesi saat ini.)

sumber ~ /. profil

Semoga ini bisa membantu seseorang.

Idan Magled
sumber
2

Saya dapat menemukannya di macOS Mojave (10.14) saat bermain dengan virtualenvwrapper-4.8.4

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

svetkesh
sumber
1

Meskipun ini adalah pertanyaan OS X, inilah yang bekerja untuk saya di Linux (Red Hat).

Virtualwrapper.sh saya ada di

~/.local/bin/virtualenvwrapper.sh

Ini mungkin karena saya menginstal virtualenvwrapper secara lokal, menggunakan --userbendera ...

pip install --user virtualenvwrapper

... sebagai alternatif dari praktik berisiko menggunakan sudo pip.

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

Saya telah menginstalnya di Ubuntu 16.04 dan menghasilkan lokasi ini.

Lora Holmes
sumber
Ini juga terjadi pada saya. :(
Siladittya
0
/usr/local/bin/virtualenvwrapper.sh
pengguna650654
sumber
3
No such file or directorySaya juga menelusuri direktori / usr / local / bin dan tidak dapat menemukan apa pun yang tampak terkait dengan virtualenv atau virtualenvwrapper
zakdances
0

Saya memiliki masalah yang sama dengan tulang beagle black (debian).

Mengunduh paket dan menginstalnya secara manual berhasil untuk saya.

Sudeep
sumber
0

Untuk Ubuntu
Jika Anda baru saja menginstalnya, periksa output di Terminal, saya memposting milik saya:

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

Di sini, baris kedua memberi tahu Anda jalannya. Bagi saya itu di/home/username/.local/bin

abhinavDAIICT
sumber
0

pip tidak akan mencoba membuat hal-hal sulit untuk Anda dengan sengaja.

Masalahnya adalah file berbasis perintah selalu diinstal di /binfolder mereka dapat di mana saja di jalur sistem.

Saya memiliki masalah yang sama dan saya menemukan bahwa saya memiliki file-file ini di file saya

~/.local/bin/

folder bukan

/usr/loca/bin/

yang merupakan kasus umum, tapi saya pikir mereka mengubah jalur default ke

~ atau $ HOME

direktori karena lebih terisolasi untuk instalasi pip dan memberikan perbedaan antara paket apt-get dan paket pip.

Jadi sampai pada titik Anda memiliki dua pilihan di sini baik Anda pergi ke . Bashrc Anda dan buat perubahan seperti ini

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

dan daripada membuat direktori virtualenvwrapper di bawah /usr/share/dan dari symlink virtualwrapper_lazy.sh Anda seperti ini

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

dan Anda dapat memeriksa apakah perintah workon Anda berfungsi yang akan mencantumkan virtualenv yang ada.

naveen.panwar
sumber
0

Jika Anda mengeksekusi pip install virtualenvwrappertanpa sudo sebagai pip pengguna normal akan berjalan tetapi tidak akan menyalin file di lokasi yang diperlukan karena kurangnya izin.

mortiz@florida:~# sudo pip3 install virtualenvwrapper

Gunakan sudo dan file akan dibuat di bawah jalurnya masing-masing:

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# 

Bekerja untuk saya di Debian GNU / Linux 9

Miguel Ortiz
sumber
-1

dalam kasus saya: /home/username/.local/bin/virtualenvwrapper.sh

Yuanxu Xu
sumber
-2

Sudahkah Anda menginstalnya menggunakan sudo? Apakah kesalahan dalam kasus saya.

Bruce
sumber