当激活 venv 时拒绝许可

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

我试过了

sudo chown -R user:user project/venv

但我明白

chown: user: illegal group name

我已经设置这些设备无数次,从来没有问题。还有什么我可以试试的吗?

我在用 Mac。

151352 次浏览

你得快跑

. venv/bin/activate

或者

source venv/bin/activate

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

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

有人在评论中问到了 .命令:

    .  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内置相同的东西。

从命令行 root 输入:

source /home/<your_username>/<app_folder>/<venv_name>/bin/activate

对我有用

基本上,它寻找在创建的文件夹路径上执行激活的权限。

在根目录上,在激活所在的所需路径上提供以下权限命令

sudo chmod -R 755 ~/tensorflow/* # or whatever the target structure

这将扩展包括读/写/执行和组在内的所有权限

然后执行 ~/bin/activate

转到激活文件右键单击并打开属性-> 权限

检查执行

打开这张图片:

enter image description here

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

python3 -m venv .venv


source .venv/bin/activate

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

enter image description here从虚拟环境文件夹中可以键入:

source ./bin/activate

是的,如果您遇到权限问题,然后去一个文件夹,并做 /folderviralEnvironment/bin/active

源码 venv/bin/active

源码 venv/bin/active

成功激活 ‘ source’命令需要在激活文件的完整路径之前添加。

前女友。

  • Your _ project _ file _ path/venv/bin/激活

**

如果您在项目文件夹中,那么按照下面的命令-

  • 源文件/文件夹/激活

.