题 如何激活virtualenv?


我已经通过搜索并尝试了各种替代方案但没有成功,现在花了几天时间 - 让我发疯。

使用Python 2.5.2在Red Hat Linux上运行 开始使用最新的Virtualenv但无法激活它,我发现某处建议需要早期版本所以我使用了Virtualenv 1.6.4,因为它应该适用于Python 2.6。

它似乎安装虚拟环境确定

[necrailk@server6 ~]$ python virtualenv-1.6.4/virtualenv.py virtual
New python executable in virtual/bin/python
Installing setuptools............done.
Installing pip...............done.

环境看起来不错

[necrailk@server6 ~]$ cd virtual
[necrailk@server6 ~/virtual]$ dir
bin  include  lib

试图激活

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

检查chmod

[necrailk@server6 ~/virtual]$ cd bin
[necrailk@server6 bin]$ ls -l
total 3160
-rw-r--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r-

问题,所以我改变了它

[necrailk@server6 bin]$ ls -l
total 3160
-rwxr--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r--    1 necrailk biz12        1005 Jan 30 11:38 activate_this.py
-rwxr-xr-x    1 necrailk biz

尝试 activate 再次

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

仍然没有快乐......


120
2018-01-30 13:02


起源


你的意思是 ./bin activate ? - Dominique
是的它应该已阅读。 bin / activate - 但是事实上sh bi / activate不会从ftp终端而不是ssh one抛出任何错误!仍然有问题,但不确定它是否正在激活 - larry
请编辑您的原始帖子以修复拼写错误,因为它们令人困惑,而且很难知道您实际键入的是什么。 ./bin activate 和 . bin/activate 意思不同。 . .bin/activate 除非有一个名为的文件夹,否则没有意义 .bin 带有一个前导点。 - Dominique
你试过“source~ / virtual / bin / activate”吗? - mmbrian
从您的环境目录开始 . bin/activate 它应该工作正常。 - dansalmo


答案:


这是我创建文件夹后的工作流程 cd进入它:

$ virtualenv venv --distribute
New python executable in venv/bin/python
Installing distribute.........done.
Installing pip................done.
$ source venv/bin/activate
(venv)$ python

207
2018-01-30 14:27



好吧,试过这个没有快乐[necrailk @ server6~ / virtual] $ cd [necrailk @ server6~] $ $ source virtual / bin / activate source:Undefined variable。 [necrailk @ server6~] $ sh virtual / bin / activate [necrailk @ server6~] $ - larry
不要输入 $ 字符,这看起来像你在这里做的: [necrailk@server6 ~]$ $source。 $ 用于指示命令提示符。 - Justin Garrick
仍然很糟糕()的错误......怎么办?
同样的错误:( user @ mintdesk~ / python_v $ venv / bin / activate bash:venv / bin / activate:权限被拒绝 - Rui Lima
一直输入'source'的替代方法是使用'。': $ . venv/bin/activate - karwag


你忘了做 source bin/activate 其中source是可执行文件名。 最初几次打动我,很容易认为手册告诉“从环境文件夹的根目录执行此操作”。

没必要 activate 可执行的 chmod


68
2017-07-13 08:20



OP打字 . bin/activate。请注意 .,这是一个同义词 source。 - Thomas


你可以做

source ./python_env/bin/activate

或者只是去目录

cd /python_env/bin/

接着

source ./activate

祝你好运。


45
2017-12-27 10:57





cd到环境路径,转到bin文件夹。 此时,当您使用ls命令时,您应该看到“激活”文件。

现在输入

source activate

14
2018-06-16 00:15





那里的问题是 /bin/. 命令。从那以后,这真的很奇怪。应该始终是它所在目录的链接。(老实说,除非 . 是一个奇怪的别名或功能,我甚至不知道它是如何可能的。)你的外壳没有一个有点不寻常 .  内置的 source

一个快速解决方法是在不同的shell中运行virtualenv。 (显而易见的第二个优点是,而不是必须 deactivate 你可以 exit。)

/bin/bash --rcfile bin/activate

如果你的shell支持它,你也可能有非标准 source 命令,哪个 应该 做同样的事情 .,但可能不存在。 (所有人都说,你应该试着弄清楚为什么你的环境很奇怪,否则将来你会再次感到痛苦。)

顺便说一句,你不需要 chmod +x 那些文件。如果要执行文件,则只需要可执行文件 。在这种情况下,您正试图从中启动它们 .,所以他们不需要它。


10
2018-01-30 13:07



另外,你应该来源 bin/activate不是 .bin/activate。甚至可能与之合作 . 然后... - krlmlr
@krlmlr是的,我以为这是一个错字,因为在下一行他 cd进入 bin。 - kojiro
嗨[necrailk @ server6~ / virtual] $ source bin / activate Badly placed()的。 [necrailk @ server6~ / virtual] $ - larry
korjiro - 你是对的 - 我确实需要找出为什么环境很奇怪 - 结果证明是非标准的bash实现 - 切换到标准bash解决了所有问题 - larry
@larry很高兴它成功了:不要忘记将答案标记为正确。 - kojiro


代替 ./activate

使用 source activate

See this screenshot


10
2017-10-13 11:25



虽然此链接可能会回答这个问题,但最好在此处包含答案的基本部分并提供参考链接。如果链接页面发生更改,则仅链接答案可能会变为无效。 - 来自评论 - zinking
@zinking谢谢,这是我的第一个答案,你的建议会帮助我提高 - Joy Mukherjee


$ mkdir <YOURPROJECT>  创建一个新项目

$ cd <YOURPROJECT> 将目录更改为该项目

$ virtualenv <NEWVIRTUALENV> 创造新的virtualenv

$ source <NEWVIRTUALENV>/bin/activate 激活那个新的virtualenv


8
2018-05-08 15:31





我也会推荐virtualenvwrapper。它为我创造奇迹,以及我总是遇到激活问题。 http://virtualenvwrapper.readthedocs.org/en/latest/


4
2018-01-30 13:44



喜源和。 (期间)似乎可以互换necrailk @ server6~ / virtual] $ source bin / activate Badly placed()的。这似乎不起作用 - larry
我的bin权限: drwxrwxr-x 2 erika erika 4096 2013-01-24 14:37 bin / - Erika
根据文档virtuallenvwrapper目前没有测试python2.5所以不舒服添加到我可能的问题 - 但谢谢 - larry
只是综述。发现我的主机使用的是非标准shell。当改变为正常时,Bash一切正常。现在在提示中显示虚拟环境,并根据所有路径进行修改。非常感谢您的帮助和建议。 - larry


创建自己的Python虚拟环境 <Your Env _name >:。 我给了它VE。

git clone https://github.com/pypa/virtualenv.git
python virtualenv.py VE

要激活新的虚拟环境,请运行(注意它不是 ./ 这里):

. VE/bin/activate

样本输出(注意提示已更改):

(VE)c34299@a200dblr$

设置虚拟环境后,您可以删除 Virtualenv 回购。


3
2018-03-16 11:45



你不应该检查virtualenv的主分支,并期望它实际工作。请改用标记版本。 - Jon Bringhurst


转到项目目录。在我的情况下,微博是烧瓶项目目录,在微博目录下应该有app和venv文件夹。这在ubuntu中对我有用。

source venv/bin/activate

enter image description here


3
2018-03-19 19:20