Windows 10/11系统运行 .ps1 脚本报错的解决方法

在 Windows 10/11系统上运行 .ps1 脚本时,提示“禁止运行此脚本”,如下图。此问题通常是由于 Windows 系统默认的策略导致,解决方法是重新设置权限策略。

图片[1]-Windows 10/11系统运行 .ps1 脚本报错的解决方法-十一张

在 Windows 11 系统中,默认执行策略为 Restricted,会禁止运行所有 .ps1 脚本,因为这可能带来安全风险。但你可以通过设置执行策略来控制脚本运行。

解决方法

在更改执行策略之前,你可以先查看当前的执行策略,以便了解当前的安全设置。以管理员身份运行 Powershell,输入以下命令即可查看当前策略,如下图。

Get-ExecutionPolicy
图片[2]-Windows 10/11系统运行 .ps1 脚本报错的解决方法-十一张
图片[3]-Windows 10/11系统运行 .ps1 脚本报错的解决方法-十一张

常见策略包括:

Restricted:禁止所有脚本运行(默认最安全)
AllSigned:只允许运行受信任发布者签名的脚本
RemoteSigned:本地脚本可运行,下载的脚本必须签名
Unrestricted:允许所有脚本运行(风险最高)

如果你只想允许本地脚本运行,但仍禁止未签名的远程脚本,可以执行以下命令将执行策略更改为 RemoteSigned,如下图,这样可以在保证安全的前提下运行可信脚本。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
图片[4]-Windows 10/11系统运行 .ps1 脚本报错的解决方法-十一张

系统会提示确认,输入 YA 并回车即可。

如果你希望禁止运行 .ps1 脚本,可以执行以下命令将执行策略设置为 Restricted,如下图。

Set-ExecutionPolicy Restricted -Scope CurrentUser

PS:-Scope CurrentUser 表示只对当前用户生效,不影响系统其他用户。

注意事项

1、修改执行策略需要管理员权限,否则无法生效。
2、将策略设置为 Unrestricted 虽然可以运行所有脚本,但会降低系统安全性,不推荐。
3、对下载的脚本,如果未签名,仍可能无法运行,需要手动解除锁定(右键属性 → 解除锁定) 。

通过以上方法,你可以在 Windows 11系统中灵活控制 PowerShell 脚本的运行权限,实现禁止或允许特定脚本执行的需求。

© 版权声明
THE END
如果觉得这篇文章对您有帮助,可以收藏本网址,方便下次访问!
点赞20 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容