Permiso denegado al activar venv.

Acabo de comenzar un nuevo proyecto en Python y creé un venv dentro de la carpeta del proyecto ejecutando virtualenv venv en el terminal. Sin embargo, cuando ejecuto venv/bin/activate , obtengo un error de permiso denegado.

Yo he tratado

 sudo chown -R user:user project/venv 

pero me sale

 chown: user: illegal group name 

He configurado estos venvs un montón de veces y nunca tuve el problema. ¿Hay algo más que pueda probar?

Estoy en una Mac.

Necesitas correr

 . venv/bin/activate 

o

 source venv/bin/activate 

El archivo de activate no es ejecutable deliberadamente porque debe ser de origen.

Debe obtenerse porque necesita realizar cambios en el medio ambiente. Si se ejecuta como un script, solo realizará cambios en el entorno del proceso hijo utilizado para ejecutar el script.

Alguien en los comentarios preguntó sobre el . mando. De la página man para bash :

  . 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. 

En resumen . es una shell incorporada que significa lo mismo que la source incorporada.

Básicamente, está buscando permiso para ejecutar activar en la ruta de la carpeta creada.

En la raíz, indique a continuación el comando de permisos en la ruta deseada donde se encuentra la activación

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

Esto extenderá todos los permisos, incluyendo Lectura / Escritura / Ejecución y grupo

luego ejecute ~/bin/activate

Desde la raíz de la línea de comando ingrese:

 source /home////bin/activate 

Trabajó para mi