win11如何更改执行策略以在 PowerShell 上运行脚本
win11如何更改执行策略以在 PowerShell 上运行脚本
win11如何更改执行策略以在 PowerShell 上运行脚本
如果您在运行 PowerShell 脚本时遇到错误,那是因为您需要更改执行策略,方法如下。
在Windows 11(或 10)上,默认情况下,当您尝试在 PowerShell 上运行脚本时,它将失败并显示“无法加载,因为在此系统上禁用了运行脚本”错误消息。这是因为 PowerShell 带有一个“执行策略”安全功能,可以控制如何加载配置文件和运行脚本,以防止恶意代码在系统上运行。
如果您必须在 Windows 11(或 10)上运行脚本,您可以更改本地计算机、当前用户或会话的执行策略。
当您为本地计算机和当前用户设置 PowerShell 执行策略时,信息将存储在注册表中。如果您为特定会话设置策略,则该策略将保存在内存中,然后在您关闭会话时丢失。
根据Microsoft的说法,执行策略不限制操作。您始终可以通过在命令行界面 (CLI) 中键入脚本来绕过该策略。执行策略旨在帮助用户防止运行恶意脚本。
本指南将教您如何更改执行策略以在 Windows 11 或 10 上的 PowerShell 上成功运行脚本。
更改执行策略以运行 PowerShell 脚本
要在 Windows 11(或 10)上成功运行 PowerShell 脚本,请使用以下步骤:
1. 打开开始。
2. 搜索PowerShell,右键单击顶部结果,然后选择以管理员身份运行选项。
3. 键入以下命令以确认当前执行策略并按Enter:Get-ExecutionPolicy
4. (可选)键入以下命令以查看有效的 PowerShell 执行策略并按Enter: Get-ExecutionPolicy -List
5. 键入以下命令以允许脚本运行并按Enter: Set-ExecutionPolicy RemoteSigned
6. (可选)键入以下命令以阻止脚本运行并按Enter: Set-ExecutionPolicy Restricted
完成这些步骤后,您可以再次执行该脚本,它现在应该可以在 Windows 11 上成功运行。如果您不再希望允许脚本在您的计算机上运行,您可以运行步骤中提到的可选命令。
如果要更改执行策略以运行当前用户或本地计算机的脚本,则需要使用“范围”选项,如下所示:Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser或.Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
在 Windows 11 上,您可以从四种不同的执行策略中进行选择以允许或拒绝脚本:
• Restricted —阻止任何脚本运行。
• RemoteSigned —允许在计算机上创建脚本。但是,除非它们具有受信任的签名,否则在另一台设备上创建的脚本将不会运行。
• AllSigned —允许所有脚本运行。但是,仅当受信任的发布者包含签名时。
• 不受限制 — 不受限制地运行任何脚本。
如果您需要运行没有所需参数且不返回输出的脚本,则无需更改执行策略。相反,您可以使用PowerShell.exe -File “FILENAME” -ExecutionPolicyBypass 命令绕过限制。
微软官方文档关于shell的执行策略说明