Bootstrap

解决Windows提示无法加载文件 xxx.ps1,因为在此系统上禁止运行脚本

1. 场景还原

在windows系统上尝试激活python虚拟环境时提示以下错误:

无法加载文件 C:\Users\xianjun\Downloads\test\.env\Scripts\Activate.ps1,因为在此系统上禁止运
行脚本
。有关详细信息...

2. 错误原因

Windows 的 PowerShell 默认的执行策略限制了脚本运行。

3. 解决方法

查看当前的执行策略

在 PowerShell 中运行以下命令查看当前的执行策略:

Get-ExecutionPolicy

可能会显示 Restricted(限制脚本运行)。

修改执行策略

打开powershell运行以下命令即可解决:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force

命令说明:

Set-ExecutionPolicy
这是用于更改 PowerShell 执行策略的 cmdlet。执行策略是一个安全特性,用于控制 PowerShell 是否允许运行脚本以及运行哪些脚本。

Unrestricted
表示设置为 无限制模式,此模式的特性如下:

  • 本地脚本:可以直接运行,无需数字签名。
  • 远程脚本:可以运行,但首次运行时会显示警告,提醒该脚本是从互联网或远程来源下载的。

注意:这种模式对安全性要求较低,可能会允许执行恶意脚本,因此需要谨慎使用。可以使用RemoteSigned:允许本地脚本运行,但需要远程下载的脚本带有数字签名。

-Scope CurrentUser
指定更改执行策略的作用范围,只影响当前用户。

-Force
强制执行此命令,忽略任何提示或确认。例如:

  • 不会要求用户手动确认更改。
  • 自动覆盖当前的执行策略。

重新运行脚本

重新运行报错的脚本,此时能正常运行。

;