PowerShell“在此系统上禁用运行脚本”错误及解决方案

信息 Running script is disable on this system 是PowerShell错误,表示当前PowerShell配置和安全策略不允许在PowerShell上运行脚本。PowerShell使用 Execution Policy 为了控制和限制PowerShell环境中出于安全原因的脚本执行。默认执行策略为 Restricted 这意味着没有脚本可以直接在PowerShell中运行。

null

执行政策

PowerShell提供以下执行策略。它们针对不同的情况进行配置,比如只执行已签名的脚本,或者不执行任何脚本等等。

  • 受限制的 策略用于阻止任何脚本执行。不能在此策略中运行任何脚本。
  • 全部签名 策略仅用于运行受信任的发布者脚本。无法在此策略中执行未签名的脚本。
  • 远程签名 策略仅用于运行下载的和受信任的发布者签名的脚本。
  • 不受限制 策略用于运行所有脚本,即使它们已下载或未签名。这是脚本执行中最不安全和最宽松的策略。在设置和使用此策略时,请小心不要使用此策略。

列出当前执行策略

当前执行策略可以与commandlet一起列出 Get-ExecutionPolicy .

Get-ExecutionPolicy

执行策略的名称如下 Restricted .

将当前用户的执行策略更改为“无限制”

为了解决“在此系统上禁用运行脚本错误”,通过将执行策略更改为 Unrestricted . 命令 Set-ExecutionPolicy 用于设置不受限制的策略。

Set-ExecutionPolicy -Scope User Unrestricted

将所有用户的执行策略更改为“无限制”

对于系统中的所有用户,可以将执行策略更改为“无限制”。为了实现这一点,应使用本地管理员或域管理员权限打开PowerShell终端。下文对此进行了解释。

相关文章: 什么是PowerShell.exe及其使用示例?

Set-ExecutionPolicy Unrestricted

一次绕过执行策略

另一种不受任何限制或错误地执行Powershell脚本的方法是绕过当前的执行策略。命令 powershell 可与 -ExecutionPolicy 选项 ByPaass -File 选项指定PowerShell脚本。

PowerShell -ExecutionPolicy ByPass -File backup.ps1
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享