ChatGPT解决这个技术问题 Extra ChatGPT

未找到 Virtualenv 命令

尽管进行了各种尝试,我仍无法让 virtualenv 工作。我在 MAC OS X 上安装了 virtualenv,使用:

pip install virtualenv

并将 PATH 添加到我的 .bash_profile 中。每次我尝试运行 virtualenv 命令时,它都会返回:

-bash: virtualenv: command not found

每次我运行 pip install virtualenv,它都会返回:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

我知道在 mac 中,virtualenv 应该正确安装在

/usr/local/bin

virtualenv 确实安装在 /usr/local/bin 中,但每当我尝试运行 virtualenv 命令时,都找不到该命令。我还尝试在目录 /usr/local/bin 中运行 virtualenv 命令,它给了我相同的结果:

-bash: virtualenv: command not found

这些是我添加到我的 .bash_profile 的 PATH

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

有什么解决方法吗?为什么会这样?

尝试将符号链接添加到 /usr/local/bin 中的 virtualenv 可执行文件
我应该在哪里创建符号链接?尽管我尝试在要使用 virtualenv @justinfay 的目录中添加符号链接,但它仍然无法正常工作
通过查看上面的路径可能类似于,将命令中的最后一个路径替换为实际 virtualenv 可执行文件的路径:$ ln -s /usr/bin/virtualenv /Library/Framework/Python.framework/Version/2.7/lib/site-packages/virtualenv/virtualenv.py
对我有用的是添加符号链接 ln -s /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv
在 lubuntu 中不起作用

P
Piper

如果你安装它

pip install virtualenv

你需要跑

sudo /usr/bin/easy_install virtualenv

将其放在 /usr/local/bin/ 中。

默认情况下,上述目录应在您的 PATH 中;否则,请相应地编辑您的 .zshrc(或 .bashrc)。


在具有 Amazon Linux 的 AWS EC2 实例上,如果您正在尝试 Let's Encrypt 的 certbot,请尝试此解决方案。这是解决我的 virtualenv 问题的唯一建议。
输出是 sudo: /usr/bin/easy_install: command not found
谢谢你 - 但我希望我知道这里有什么巫术 - “easy_install”做了什么常规pip没有做的?即为什么这行得通?
这在 MacOs 上对我有用python -m venv venv_name
它一直在尝试使用 2.7。
v
vettipayyan

我遇到了同样的问题,这就是我解决它的方法:

这个问题发生在我身上,因为我通过 pip 作为普通用户(不是 root)安装了 virtualenv。 pip 将软件包安装到目录 ~/.local/lib/pythonX.X/site-packages 当我以 root 或管理员权限 (sudo) 运行 pip 时,它将软件包安装在 /usr/lib/pythonX.X/dist-包。这条路对你来说可能不同。 virtualenv 命令仅在第二种情况下被识别因此,要解决此问题,请执行 pip uninstall virtualenv 然后使用 sudo pip install virtualenv 重新安装(或以 root 身份安装)


我遵循了您的解决方案并收到消息“...如果使用 sudo 执行 pip,您可能需要 sudo 的 -H 标志”。最后 sudo -H pip install virtualenv 为我完成了这项工作(在 OS X 上),谢谢
如果您的机器上没有 root 用户怎么办?
解决了这个问题。我猜这个可以进入全局目录而不是 --user
当 pip 本身安装在 ~/.local/SOME_PATH 中时,也会发生此问题。我cpsite-packages 目录中的所有内容都编辑到 /usr/lib/pythonx.x/site-packages 中,并rm -rf编辑了原始目录。
第4步就是我要找的!我不知道如何从 ~/.local 中获取文件
L
Luis Martins

最简单的答案。只是:

pip uninstall virtualenv

接着:

pip install virtualenv

或者您可能使用 sudo 安装了 virtualenv,在这种情况下:

pip install --user virtualenv

哇!这就是我的诀窍。顺便说一句,我正在使用 pyenv
这是使用 brew 的 Mac OS X 的方式。
已经为此奋斗了数周,它一直在阻碍我在 python 项目上工作的有限时间,这是在 mac 上为我工作的唯一解决方案。谢谢!
s
sam

在 Ubuntu 18.04 LTS 上,我也遇到了同样的错误。以下命令有效:

sudo apt-get install python-virtualenv

brew install python-virtualenv 不存在
在我的 18.04 上像魅力一样工作,谢谢
否决了将 apt 提升为 apt-get 的继任者。
v
vinzee
python3 -m virtualenv virtualenv_name   

或者

python -m virtualenv virtualenv_name

在没有 3. python -m virtualenv 的情况下为我工作
始终是使用 python 解决路径问题的好方法。
为我工作:windwos 10 - 64 字节中的“python -m virtualenv myvirtualenv”。
K
Krystian Sakowski

我在 Mac OS X El Capitan 上遇到了同样的问题。

当我像这样安装 virtualenv sudo pip3 install virtualenv 时,我的命令行下没有 virtualenv

我按照以下步骤解决了这个问题:

卸载以前的安装。通过调用 sudo su 在安装 virtualenv 之前切换到超级用户帐户 通过调用 pip3 install virtualenv 安装 virtualenv 最后您应该能够从用户帐户和超级用户帐户访问 virtualenv。


适用于 macOS Big Sur 11.6
J
J. Scott Elblein

我遇到过同样的问题。我使用以下步骤使其工作

sudo pip uninstall virtualenv

sudo -H pip install virtualenv

这就对了。它开始工作了。

sudo -H----> 的用法sudo -H:HOME 变量设置为目标用户的主目录。


它为我解决了完全相同的问题...为什么不将其作为解决方案进行检查?
也为 Ubuntu 工作。我在为数字海洋设置它时遇到了问题。这应该是解决方案。
P
Pithikos

找出问题

尝试使用 --verbose 标志安装

pip install virtualenv --verbose

输出看起来像这样

  ..
  Using cached virtualenv-15.1.0-py2.py3-none-any.whl
  Downloading from URL https://pypi.python.org/packages/6f/86/3dc328ee7b1a6419ebfac7896d882fba83c48e3561d22ddddf38294d3e83/virtualenv-15.1.0-py2.py3-none-any.whl#md5=aa7e5b86cc8cdb99794c4b99e8d670f3 (from https://pypi.python.org/simple/virtualenv/)
Installing collected packages: virtualenv

  changing mode of /home/manos/.local/bin/virtualenv to 755
Successfully installed virtualenv-15.1.0
Cleaning up...

从输出中我们可以看到它安装在 /home/manos/.local/bin/virtualenv,所以让我们确保 PATH 包含它。

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

在我的例子中,我们可以清楚地看到 /home/manos/.local/bin 完全丢失,这就是 shell 找不到程序的原因。

解决方案

我们可以通过多种方式解决这个问题:

我们可以通过摆弄 pip 选项(不推荐)直接安装到特定目录。在 /usr/local/bin 或类似位置创建适当的符号链接。将 /home/manos/.local/bin 附加到 PATH。安装为 sudo 直接安装到 /usr/local/bin

最后两个选项可能是最明智的。最后一个解决方案是最简单的,因此我将只展示解决方案 3。

将此添加到 ~/.profile:

PATH="$PATH:$HOME/.local/bin"

注销并再次登录,它应该可以工作。


这非常有效。它应该是公认的答案,详细解释应该是 +1
T
Tamás Sengel

找到了这个解决方案,这对我来说非常有效。

sudo -H pip install virtualenv

-H 将其设置为 HOME 目录,这似乎是大多数人的问题。


B
Billal Begueradj

亲自。我执行了与全新 Ubuntu 20 安装相同的步骤(除了我使用了 pip3)。我遇到了同样的问题,我记得我是这样解决的:

python3 -m virtualenv venv 

链接以了解 -m <module-name> 符号。


D
Dejv

就我而言,我运行 pip show virtualenv 以获取有关 virtualenv 包的信息。我将看起来与此类似,并且还将显示包的位置:

user@machine:~$ pip show virtualenv
Name: virtualenv
Version: 16.2.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: ianb@colorstudy.com
License: MIT
Location: /home/user/.local/lib/python3.6/site-packages
Requires: setuptools

从那个抓取位置部分到 .local 部分,在本例中为 /home/user/.local/。您可以在 /home/user/.local/bin/virtualenv 下找到 virtualenv 命令。

然后,您可以运行 /home/user/.local/bin/virtualenv newvirtualenv 之类的命令。


B
Bouramas

您说过每次运行 pip install 都会得到 Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages。您需要执行以下操作:

更改目录(转到 virtualenv.py 所在的目录) cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages 如果您执行 ls,您将看到脚本在那里virtualenv.py 像这样运行脚本: python virtualenv.py --distribute /the/path/at/which/you/want/the/new/venv/at theNameOfTheNewVirtualEnv

希望这可以帮助。我的建议是更多地研究 venvs。这是一个很好的资源:https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/


a
apaderno

我遇到了麻烦,因为我使用 apt 安装 python-virtualenv 包。为了让它工作,我必须用 apt-get remove python-virtualenv 删除这个包并用 pip install virtualenv 安装它。


这留下了一个问题:为什么我的 python3-virtualenv 包坏了?
V
VertigoRay

确保 virtualenv 是可执行的。

如果未找到 virtualenv,则运行完整路径 (/usr/local/bin/virtualenv) 应该可以工作。


D
Dev_mjm

很长一段时间我都有同样的问题。我通过运行这两个命令解决了它,首先是安装,其次是激活 env:

python3 -m pip install virtualenv
python3 -m virtualenv yourenvname

请注意,我使用的是 python3,如果 python3 失败,您可以将其更改为仅 python。谢谢。


B
Bobby Wan-Kenobi

我认为您的问题可以使用简单的符号链接来解决,但是您正在创建指向错误文件的符号链接。据我所知,virtualenv 已安装到 /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv,(您可以更改 Python 版本的数字)因此用于创建 符号链接command /strong> 应该是:

ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv

设置符号链接是我需要做的。谢谢你。
D
DAme

在 AWS 上使用 pip 安装的 ubuntu 18.4 无法正常工作。使用 apt-get install 解决了我的问题。

sudo apt-get install python-virtualenv

并检查

virtualenv --version

Y
Youssef

您遇到此错误:

zsh: command not found: virtualenv

因为很可能您尝试安装 virtualenv 而不事先输入 sudo。

如果您尝试将其添加到 /usr/local/bin,这可能会导致语法错误,因为软件包未正确安装/复制:

SyntaxError: invalid syntax

  File "build/bdist.macosx-12.0-x86_64/egg/platformdirs/__main__.py", line 16
    def main() -> None:
               ^

如果您尝试在没有 sudo 权限的情况下通过 pip 安装 virtualenv,则需要先将其卸载:

pip3 uninstall virtualenv

然后使用 sudo 安装它:

sudo pip3 install virtualenv

接下来你只需要激活环境:

virtualenv env 
source env/bin/activate 

S
Siempay

同样的问题:所以我只是做了pip uninstall virtualenv然后pip install virtualenv

pip install virtualenv --user

使用缓存收集 virtualenv https://files.pythonhosted.org/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl 安装收集的包:virtualenv

然后我得到了这个:

脚本 virtualenv 安装在 '/Users/brahim/Library/Python/2.7/bin' 中,它不在 PATH 上。考虑将此目录添加到 PATH,或者,如果您希望禁止显示此警告,请使用 --no-warn-script-location。

它清楚地说明了它的安装位置以及如何获取它


7
7guyo

如果您使用的是 Linux,请打开终端并在中途键入 virtualenv 并使用 tab 键自动完成。如果没有自动完成在您的系统上安装 virtualenv,请运行:

mycomp$sudo apt-get install virtualenv
//if you're already super user.
mycomp#apt-get install virtualenv

您现在可以导航到要创建项目的位置并执行以下操作:

myprj$pip3 install virtualenv    
//to install python 3.5 and above  
myprj$virtualenv venv --python=python3.5  
//to activate virtualenv  
(venv)myprj$source venv/bin/activate  
(venv)myprj$deactivate

我升级到 python 3.7。我一直在尝试安装 virtualenv,它总是会返回“错误:找不到满足 virtualenv 要求的版本(来自版本:无)”。我在某个地方读到它安装了 virtualenv 的某个 python 3.x 版本,但是试图简单地创建一个虚拟环境,没有用,它会返回错误,它不知道 virtualenv 命令。但它与您回答中的以下命令“virtualenv venv --python=python3.7”一起使用。之前没有做任何其他事情。以防它帮助其他人。 macOS 环境。
M
Md Samiul Islam

确保您正在使用

sudo

在这种情况下,首先您需要卸载 pipenv,然后使用 sudo 命令重新安装。

pip 卸载 pipenv sudo pip install pipenv


Y
Yuyutsu

按照以下基本步骤设置虚拟环境

sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/get-pip.py ~/.cache/pip

我们需要更新我们的 ~/.bashrc

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

~/.bashrc 文件只是当您启动新终端时 Bash 运行的一个 shell 脚本。您通常使用此文件来设置各种配置。在这种情况下,我们设置了一个名为 WORKON_HOME 的环境变量来指向我们的 Python 虚拟环境所在的目录。然后我们从 virtualenvwrapper 加载任何必要的配置。

要更新您的 ~/.bashrc 文件,只需使用标准文本编辑器,nano 可能是最容易操作的。一个更简单的解决方案是使用 cat 命令并完全避免使用编辑器:

echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc

编辑 ~/.bashrc 文件后,我们需要重新加载更改:

source ~/.bashrc

现在我们已经安装了 virtualenv 和 virtualenvwrapper ,下一步是实际创建 Python 虚拟环境——我们使用 mkvirtualenv 命令来完成。

mkvirtualenv YOURENV

m
marika.daboja

我正在上 Angela Yu 的在线 iOS 课程,我遇到了同样的问题,而且当我尝试运行 virtualenv --python=/{myPath} {newVirtualEnvName} 时,我还遇到了权限被拒绝错误 13

我通过以下方式解决了它:

切换到 sudo 用户 sudo su 导航到我的目标文件夹(我希望我的新虚拟环境所在的位置),即。 /Users/muUserName/Environments/ 运行命令 python -m virtualenv python27 其中 python27 是我在 Environments 文件夹中创建的文件夹 pathon27 上方的新虚拟环境的名称,然后我能够运行 source python27/bin/activate 来启动我的 virtualenv


切换到 sudo su 对我有用,即使我想使用 python3 作为要创建的 venv 文件夹。尝试在本地安装时似乎是权限问题,除非以 root 身份显式登录,否则提升的 sudo 找不到正确的路径
C
CyanBook

这适用于 ubuntu 18 及更高版本(未在以前的版本中测试):

sudo apt install python3-virtualenv

R
Ravish Bhagdev

对我来说,它安装在这个路径中(MacOS 上的 python 2.7):$HOME/Library/Python/2.7/bin


A
Arghya Sadhu

简单的答案是,如果您不是 sudo 用户,因为我不是。您需要添加 bin 文件夹的路径(/home/myusername/.local/bin)。所以基本上命令行搜索这些路径中的哪个是您输入的命令.

export PATH=/home/b18150/.local/bin:/usr/bin:/bin

在这里它会先在 local/bin 中搜索,然后是 /usr/bin,然后是 /bin


A
Art Raptors
apt update
apt upgrade
apt install ufw python virtualenv git unzip pv

3 个命令,一切正常!


问题是针对 mac OS,没有 apt
d
dhaupin
sudo apt-get install python-virtualenv

你看到他要的是 Mac OSX 吗?