Ich habe gerade ein neues Python-Projekt gestartet und ein Programm im Projektordner erstellt, indem ich virtualenv venv
im Terminal ausführte. Wenn ich jedoch venv/bin/activate
starte, erhalte ich eine Fehlermeldung, die die Berechtigung verweigert.
Ich habe versucht
Sudo chown -R user:user project/venv
aber ich verstehe
chown: user: illegal group name
Ich habe diese Dinge schon viele Male eingerichtet und hatte nie das Problem. Kann ich noch etwas probieren?
Ich bin auf einem Mac.
Du musst rennen
. venv/bin/activate
oder
source venv/bin/activate
Die activate
-Datei ist absichtlich nicht ausführbar, da sie beschafft werden muss.
Es muss beschafft werden, da Änderungen an der Umgebung vorgenommen werden müssen. Wenn es als Skript ausgeführt wird, nimmt es nur Änderungen an der Umgebung des zum Ausführen des Skripts verwendeten untergeordneten Prozesses vor.
Jemand in den Kommentaren fragte nach dem Befehl .
. Von der man Seite für 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.
Kurz gesagt, .
ist eine integrierte Shell, die dasselbe wie die eingebaute source
bedeutet.
Grundsätzlich wird nach der Berechtigung gesucht, die Aktivierung für den erstellten Ordnerpfad auszuführen.
Geben Sie im Stammverzeichnis unter dem Befehl permissions den gewünschten Pfad ein, in dem sich enable befindet
Sudo chmod -R 755 ~/tensorflow/* # or whatever the target structure
Dadurch werden alle Berechtigungen einschließlich Lesen/Schreiben/Ausführen und Gruppe erweitert
dann ~/bin/activate
ausführen