修复 Windows 11 中运行 PowerShell 脚本的错误:更新的完整指南

最后更新: 06/06/2025

  • PowerShell Windows 11 中运行脚本时的错误是由于默认的安全限制造成的。
  • 有几种方法可以根据用户需求修改执行策略和启用脚本。
  • 适当的安全配置允许控制脚本的执行,从而最大限度地降低系统风险。
PowerShell 脚本被阻止错误

您最近是否遇到过以下烦人的消息“无法上传文件,因为此系统已禁用脚本执行。= 在 Windows 11 上尝试在 PowerShell 中运行脚本时你并不孤单。这种情况会让新手和经验丰富的开发人员抓狂。这种错误 它通常出现在我们想要自动化任务或测试小脚本时。 突然间,由于似乎隐藏在层层安全和未知政策背后的问题,系统让我们陷入瘫痪。

在本文中,我解释了 关于 Windows 11 上的 PowerShell 脚本执行错误你需要知道的一切,采用友好实用的方式,即使您没有太多技术经验也能理解。我们将深入探讨问题原因、安全策略、故障排除步骤以及最推荐的替代方案,并充分考虑您的安全和需求。我还将澄清一些常见问题以及其他教程中经常忽略的技术细节。

为什么我在 PowerShell 中收到脚本执行错误?

在 Windows 11-9 中执行 PowerShell 脚本时出错

经典错误信息可能会略有不同但它几乎总是这样说: No se puede cargar el archivo <ruta_del_script> porque la ejecución de scripts está deshabilitada en este sistema. 此警告并不意味着您的计算机感染了病毒或者您的 Windows 已损坏。;原因在于 PowerShell 安全策略的配置方式。

微软在每个新版本的 Windows 中都在加强安全策略,尤其是自 Windows 10 和 Windows 11 以来。默认情况下, PowerShell 中的脚本执行受到限制 防止恶意代码不受控制地运行对于大多数用户来说这是一件好事,但对于开发人员和管理员来说,这可能是一个令人讨厌的限制。

独家内容 - 点击这里  如何不升级到 Windows 11

一些最常见的错误消息是:

  • 无法加载文件 C:\my_script.ps1。此系统已禁用脚本执行。请参阅“Get-Help about_signing”了解更多信息。
  • 无法加载该文件,因为此系统已禁用脚本执行。有关详细信息,请参阅 about_Execution_Policies。
  • 文件 C:\my_script.ps1 未经数字签名。该脚本将无法在系统上运行。

根本原因是 PowerShell 中配置的执行策略这些策略定义是否允许脚本文件运行,以及在什么条件下运行。默认情况下,启用最严格的策略: 受限,这会阻止任何脚本的自动执行。

PowerShell 执行策略是什么?为什么它们很重要?

PowerShell 执行策略

Windows PowerShell 使用执行策略系统来决定哪些脚本可以运行以及在什么情况下运行。. 这对于系统安全至关重要。因为它可以防止启动从互联网下载或通过电子邮件接收的潜在有害代码。

您可以找到的主要政策是:

  • 受限:这是 Windows 11 中的默认策略。 不允许执行任何脚本,仅限交互式命令。
  • 使用AllSigned:仅允许运行由受信任的发布者进行数字签名的脚本和配置文件。
  • 下RemoteSigned:本地脚本运行时没有问题,但从互联网下载的脚本必须由受信任的发布者进行数字签名。
  • 无限制:允许您运行任何脚本,但如果脚本来自互联网,则会显示警告。

选择正确的政策至关重要如果您只想运行本地脚本,RemoteSigned 可能就足够了。如果您是开发人员并且对自己的代码很有信心,那么切换到 Unrestricted 可能就足够了,但务必谨慎。

如何识别Windows 11中的当前执行策略?

在进行任何更改之前,最好先了解一下您正在实施的政策。. 去检查:

  • 打开 PowerShell您可以从“开始”菜单中搜索“PowerShell”来执行此操作。如果您需要进行更改, 以管理员身份执行.
  • 键入以下命令:
    Get-ExecutionPolicy -List

这将显示在不同区域(用户、本地系统、进程等)应用的策略列表。 您通常会看到“受限”作为有效策略。 大多数情况下。

独家内容 - 点击这里  如何打开 .DSN 文件

解决方案:如何逐步启用脚本执行

在 Powershell 中启用脚本执行

有几种方法可以解决此错误,每种方法 这取决于您想要维持的安全级别。 以及您的工作环境。以下是主要选项:

暂时更改执行策略(当前会话)

如果您只需要运行一次脚本并且不希望更改是永久性的,您可以这样做:

  1. 以管理员身份打开 PowerShell。
  2. 跑:
    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted

这只会影响您打开的 PowerShell 窗口。。当您关闭它时,该策略将恢复到之前的状态。

为整个用户或系统设置执行策略

要使更改无限期地持续下去,请根据需要使用以下命令之一:

  • 对于当前用户:
    Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
  • 系统范围(需要管理员权限):
    Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy RemoteSigned

参数 -执行政策 您可以将其修改为 无限制, 使用AllSigned o 下RemoteSigned 取决于你的需要。 RemoteSigned 通常是用户和开发人员最平衡的选择.

从 Windows 11 设置更改执行策略

另一个不太技术性的替代方法是访问系统选项:

  1. 打开 Windows 11 设置(您可以点击 赢+我).
  2. 隐私和安全 > 面向开发者.
  3. 查找 PowerShell 部分。
  4. 启用运行未签名的本地脚本的选项,并且仅要求对远程脚本进行签名.

对于那些不想接触命令并喜欢简单的图形选项的人来说,这种方法是理想的选择。

常见错误和安全建议

如果执行的内容没有得到很好的控制,启用脚本执行可能会有风险。遵循以下建议至关重要:

  • 不要下载或运行来自未知来源的脚本。即使政策限制较少,仍需保持谨慎。
  • 使用 下RemoteSigned 只要有可能。
  • 运行必要的脚本后, 重新建立以前的政策 (例如,使用 Set-ExecutionPolicy Restricted).
  • 在商业环境中或处理关键脚本时, 选择 AllSigned 或咨询您的系统管理员。.
独家内容 - 点击这里  如何旋转Mac视频

特殊情况:PowerShell、Azure 和不兼容的版本

在某些情况下,错误可能是由于执行策略以外的其他原因造成的。例如,对于 Azure Active Directory 等特定模块, 某些现代版本的 PowerShell 不受支持,这可能会引发其他错误:

  • Azure Active Directory 经典模块仅适用于 PowerShell 3 到 5.1对于更高版本,请寻找模块的替代或更新版本。
  • 始终记住运行需要管理的模块,例如 管理员 以避免许可证不足。

如果您忘记了您的 PowerShell 版本,只需运行:
$PSVersionTable
查看有关它的所有信息。

其他故障排除和有用资源

高级 PowerShell-4 技巧

有时即使应用上述命令,您仍然可能会遇到崩溃. 在这种情况下:

  • 检查是否有 防病毒软件或公司政策阻止更改.
  • 如果错误仅发生在下载的脚本中, 检查文件属性并解锁 (右键点击>属性>解锁).
  • 检查 微软官方帮助 如果是企业环境,有自己的限制性政策,则有专门的论坛。

请记住,如果您需要额外的帮助,您可以随时向 PowerShell 用户社区或 Microsoft 支持渠道因为它们通常会随着版本间引入的变化而更新。

了解 Windows 11 为何限制 PowerShell 中的脚本执行是高效、安全地使用脚本的第一步。 通过遵循这些建议,您将解决错误并学习如何更好地管理您的运行时环境,从您的自动化中获得更多收益并保护您的系统。 仅在必要时更改设置,并记得在完成任务后重置安全策略。

高级 PowerShell-0 技巧
相关文章:
管理员的高级 PowerShell 技巧