我正在尝试在OSX上设置virtualenvwrapper,我找到的所有说明和教程都告诉我将源命令添加到.profile,指向 virtualenvwrapper.sh。我已经检查了所有的python和站点包目录,但我找不到任何 virtualenvwrapper.sh。我需要单独下载吗?pip 安装不正确吗?
以下是/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。它在哪里?
您可以使用find
命令搜索文件:
find / -name virtualenvwrapper.sh
这将从根目录搜索文件的所有目录。
在 ubuntu 12.04 LTS 上,通过 pip 安装,它被安装到
/usr/local/bin/virtualenvwrapper.sh
在 Ubuntu 17.04 上,以普通用户身份通过 pip 安装,它被安装到
~/.local/bin/virtualenvwrapper.sh
你已经试过了吗?
$ which virtualenvwrapper.sh
存储/定位 virtualenvwrapper.sh的确切路径因操作系统而异。即使在相同的操作系统中,它也因版本而异。因此,我们需要一个适用于所有操作系统版本的通用解决方案。
我发现找到其路径的最简单方法是:执行
pip uninstall virtualenvwrapper
这将提示确认。说"不" 但是第一行确认显示 virtualenvwrapper.sh 的路径(如果您说"是",提示会给出它将删除的文件列表。此列表中的第一个条目包含计算机中 virtualenvwrapper.sh 路径)
我只是用pip重新安装了它。
sudo pip uninstall virtualenvwrapper
sudo pip install virtualenvwrapper
这次它把它放在/usr/local/bin 中。
或者,就像我一样。只需卸载虚拟环境包装器
sudo pip uninstall virtualenvwrapper
然后用easy_install安装它
sudo easy_install virtualenvwrapper
这次我发现文件"/usr/local/bin/virtualenvwrapper.sh"已安装...在此之前,即使通过此命令,我也无法在任何地方找到该文件
查找/名称 virtualenvwrapper.sh
在 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
在 OSx EI 船长中,我将虚拟环境包装器安装为
sudo pip3 install virtualenvwrapper
,但是我在/user/local/bin
中找不到 virtualenvwrapper.sh, 它终于在/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
,以及您可以像官方文档一样按照设置指南进行操作的所有内容。 祝你好运!
在 OS X 10.8.2 中,使用 Python 2.7:
/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
对我来说,它是在:
~/Library/Python/2.7/bin/virtualenvwrapper.sh
(使用 OS X,pip install --user
安装)
我有同样的问题。如果你有旧版本的虚拟包装器,那么pip将不起作用。
从 http://pypi.python.org/pypi/virtualenvwrapper/3.6 下载 SRC 和 Python setup.py 安装。然后问题解决了。
对于基于 RPM 的发行版(如 Fedora 19),运行sudo pip install virtualenvwrapper
命令后,您可以在以下位置找到该文件:
/usr/bin/virtualenvwrapper.sh
使用普通用户在 Ubuntu 15.10 上使用 pip 安装它,它被放入我通过运行找到的~/.local/bin/virtualenvwrapper.sh
中:
$ find / -name virtualenvwrapper.sh 2>/dev/null
使用
find / -name virtualenvwrapper.sh
我得到了一吨"权限被拒绝",并且恰好是文件位置的一个打印输出。我错过了它,直到我使用 pip 再次卸载/安装它时找到该文件位置。
如果你好奇,它是在
/usr/local/share/python/virtualenvwrapper.sh
就我而言(OSX El Capitan,版本 10.11.5),我需要像这样编辑 .profile:
在终端中:
vim ~/.profile
export WORKON_HOME=$HOME/.virtualenvs
export MSYS_HOME=C:msys1.0
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
然后重新加载配置文件(它将在当前会话中可用。
来源 ~/.profile
希望它能帮助某人。
/usr/share/virtualenvwrapper/virtualenvwrapper.sh
我已经在 Ubuntu 16.04 上安装了它,它导致了这个位置。
我可以在macOS Mojave(10.14)中找到一个,同时玩virtualenvwrapper-4.8.4
/library/frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh
如果您在Mac上使用brew,则可以在以下位置找到它
/opt/homebrew/bin/virtualenvwrapper.sh
虽然这是一个OS X问题,但以下是在Linux(Red Hat)上对我有用的问题。
我的 virtualwrapper.sh 在
~/.local/bin/virtualenvwrapper.sh
这可能是因为我在本地安装了 virtualenvwrapper,使用--user
标志......
pip install --user virtualenvwrapper
。作为使用sudo pip
的风险做法的替代方案。
/usr/local/bin/virtualenvwrapper.sh
我在 beagle bone black(debian) 中遇到了同样的问题。
手动下载软件包并安装对我有用。
对于 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
>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。
如果您在没有 sudo 的情况下执行pip install virtualenvwrapper
,则普通用户pip 将运行,但由于缺乏权限,不会将文件复制到所需位置。
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 上为我工作
在我的例子中:/home/username/.local/bin/virtualenvwrapper.sh
你用sudo安装了它吗? 是我的情况中的错误。