当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误

作者:精品下载站 日期:2024-12-14 13:44:50 浏览:13 分类:玩电脑

修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误


问题:出现“无法加载,因为在此系统上禁用运行脚本”错误!

在尝试从 PowerShell 控制台运行 PowerShell 脚本时,我收到以下错误消息:“无法加载文件 C:\temp\GenerateRpt.ps1,因为在此系统上禁用了运行脚本。有关详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkID=135170 上的 about_Execution_Policies。”

在某些情况下,它是“文件未经过数字签名。您无法在当前系统上运行此脚本。有关运行脚本和设置执行策略的更多信息,请参阅 about_Execution_Policies。”错误。

[玩转系统] 修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误

根本原因:

这是因为 Windows PowerShell 执行策略被设置为防止不受信任的脚本影响您的 Windows 客户端环境。执行策略是确定在 PowerShell 中运行的脚本的信任级别的安全设置。在 Windows 10 等客户端操作系统上,默认执行策略是“严格”的,会阻止脚本运行。

“无法加载,因为在此系统上禁用运行脚本”的解决方案

如何启用 PowerShell 脚本并解决此系统错误上运行脚本被禁用的问题?要解决此问题,我们必须使用 Set-ExecutionPolicy cmdlet 设置执行策略,以便 PowerShell 脚本在特定计算机上运行。以下是允许 PowerShell 脚本执行的方法:

  1. 通过选择“以管理员身份运行”(或右键单击“开始”菜单并从上下文菜单中选择“Windows PowerShell(管理员)”)打开 PowerShell 控制台,并使用以下命令获取执行策略: Get-ExecutionPolicy 获取当前应用的策略,例如“Restricted”。

    [玩转系统] 修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误

  2. 使用以下命令设置执行策略:Set-ExecutionPolicy RemoteSigned
  3. 当提示继续时,键入“Y”。

您还可以使用Set-ExecutionPolicy Unrestricted来删除对安全策略的所有限制(但是,RemoteSigned 执行策略是理想的选择!)。更改执行策略后,您应该能够运行脚本而不会遇到“此系统上禁用运行脚本”错误。

RemoteSigned 策略要求来自 Internet 的脚本和配置文件必须由受信任的发布者签名。它在幕后设置注册表项: HKLM\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell 。策略参数采用以下值:

  • 受限 - 不允许编写脚本
  • 无限制 - 您可以运行任何脚本,无需签名。
  • RemoteSigned - 适合测试、开发环境。仅来自互联网的文件需要签名。这是服务器上的默认设置。
  • AllSigned - 本地或远程脚本 - 应由受信任的发布者签名。

[玩转系统] 修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误

如果无法通过以管理员身份运行 PowerShell 来设置执行策略怎么办?

要设置当前用户范围的执行策略,请使用以下命令:


Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

默认范围是“LocalMachine”,它为当前机器的所有用户设置策略。

暂时绕过会话的执行策略

您可以仅针对一次性会话绕过执行策略。在命令提示符中,键入:PowerShell -ExecutionPolicy Bypass

关闭 PowerShell 窗口后,当前 PowerShell 会话就会结束,Bypass 也会随之关闭。这允许您临时运行 PowerShell 脚本,同时保留所有其他 PowerShell 会话的 ExecutionPolicy 设置。您还可以将脚本内容复制粘贴到 PowerShell 控制台中以绕过执行策略。

在 PowerShell ISE 中运行脚本怎么样?

您可以通过选择脚本块然后按 F8(运行选择)来绕过执行策略。

使用组策略对象设置多台计算机的执行策略

如果要更改多台计算机上的执行策略,可以在域控制器中使用组策略。具体方法如下:

  1. 打开组策略编辑器。
  2. 在“本地计算机策略”下,导航到计算机配置 >> 管理模板 >> Windows 组件 >> Windows PowerShell
  3. 启用“打开脚本执行”策略,然后从下拉列表中选择所需的执行策略,例如“允许本地脚本和远程签名脚本”,这相当于我们使用Set-ExecutionPolicy设置的“RemoteSigned”属性命令。

    [玩转系统] 修复了无法加载 PowerShell 脚本,因为在此系统上禁用运行脚本的错误

这是 Microsoft 参考:配置执行策略

包起来

PowerShell 中的“运行脚本在此系统上被禁用”错误可能会令人沮丧,但通过更改执行策略可以轻松修复。通过了解执行策略并遵循本文概述的步骤,您可以启用脚本执行并利用 PowerShell 强大的自动化功能。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯