在 PowerShell 中运行 Anaconda 脚本时报错

在 PowerShell 中运行 Anaconda 脚本时报错

我在运行以下命令后打开 PowerShell 时遇到了这个错误:

conda init powershell

PowerShell 尝试加载我的配置文件脚本,但由于当前执行策略而阻止了它:

+ . <<<<  'C:UsersuserDocumentsWindowsPowerShellprofile.ps1'
    + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException

conda init powershell 会修改 PowerShell 配置文件,让 Conda 能够自动初始化。如果 PowerShell 不允许运行配置文件脚本,Conda 就无法完成加载,shell 会报告 PSSecurityException

一个更安全的修复方法是允许当前用户运行本地创建的脚本:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

然后关闭 PowerShell,再重新打开。

如果你仍然想使用当时帮我解决问题的原始、更宽松的设置,可以运行:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

你可以用下面的命令查看当前生效的策略:

Get-ExecutionPolicy -List

对于大多数本地 Conda 设置来说,只修改 CurrentUser 就足够了,并且可以避免更改整台机器的策略。

Leave a Reply