首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开通venv权限被拒绝

开通venv权限被拒绝
EN

Stack Overflow用户
提问于 2017-08-08 04:04:19
回答 7查看 106.1K关注 0票数 111

我刚刚启动了一个新的python项目,并通过在终端中运行virtualenv venv在项目文件夹中创建了一个venv。然而,当我运行venv/bin/activate时,我得到了一个权限被拒绝的错误。

我试过了

代码语言:javascript
复制
sudo chown -R user:user project/venv

但我得到了

代码语言:javascript
复制
chown: user: illegal group name

我已经设置了很多次这样的venv,但从来没有出现过这个问题。还有什么我可以试试的吗?

我用的是Mac电脑。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2017-08-08 04:13:28

你需要运行

代码语言:javascript
复制
. venv/bin/activate

或者

代码语言:javascript
复制
source venv/bin/activate

activate文件故意不能执行,因为它必须是源文件。

它必须是源的,因为它需要对环境进行更改。如果它作为脚本运行,则只会更改用于运行脚本的子进程的环境。

评论中有人询问有关.命令的问题。从man page for bash

代码语言:javascript
复制
    .  filename [arguments]
   source filename [arguments]
          Read  and execute commands from filename in the current shell
          environment and return the exit status of the last command
          executed from filename.

简而言之,.是一个内置的shell,其含义与内置的source相同。

票数 294
EN

Stack Overflow用户

发布于 2021-01-30 05:16:01

在我的VSC上,我使用了这些,它起作用了。

代码语言:javascript
复制
python3 -m venv .venv

source .venv/bin/activate
票数 8
EN

Stack Overflow用户

发布于 2021-06-18 18:25:09

我也有同样的问题,这对我很有效:. venv/bin/activate

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45554864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档