我正在尝试在VSCode中设置一个虚拟环境。
为此,我在GitBash中使用-m venv newproject
创建了一个文件夹"newproject"。
问题是我无法激活虚拟环境,因为正在运行脚本在此系统上禁用(以下代码来自VSCode终端(:
./activate : File C:UsersnameOneDriveDokumentepy_scriptsnewprojectScriptsActivate.ps1 cannot be loaded because running scripts is disabled on this system. For
more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ ./activate
./activate : File C:UsersnameOneDriveDokumentepy_scriptsnewprojectScriptsActivate.ps1 cannot be loaded because running scripts is disabled on this system. For
more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ ./activate
+ ~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
我觉得这很困惑,因为我已经尝试通过Powershell将执行策略设置为admin,同时设置为RemoteSigned和Unrestricted,但我仍然收到错误(以下代码来自Powershell(:
PS C:windowssystem32> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose
you to the security risks described in the about_Execution_Policies help topic at
https:/go.microsoft.com/fwlink/?LinkID=135170. Do you want to change the execution policy?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): y
PS C:windowssystem32> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process RemoteSigned
CurrentUser Undefined
LocalMachine Undefined
PS C:windowssystem32> Set-ExecutionPolicy Unrestricted -Scope Process
Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose
you to the security risks described in the about_Execution_Policies help topic at
https:/go.microsoft.com/fwlink/?LinkID=135170. Do you want to change the execution policy?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): y
PS C:windowssystem32> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Unrestricted
CurrentUser Undefined
LocalMachine Undefined
为什么尽管允许运行本地编写的脚本,我仍然收到错误?
谢谢!
我刚刚想明白了。必须允许VSCode中的脚本,而不是在单独的PowerShell窗口中:
PS C:UsersnameOneDriveDokumentepy_scriptsnewprojectScripts> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
PS C:UsersnameOneDriveDokumentepy_scriptsnewprojectScripts> ./activate
(newproject) PS C:UsersmikesOneDriveDokumentepy_scriptsnewprojectScripts>