PowerShell 是一个优秀且先进的跨平台任务自动化解决方案。在 Windows 系统上创建和运行 PowerShell 脚本通常非常容易。但是,您可能会被“在此系统上禁用运行脚本”所阻碍。” 如果您在系统上运行脚本,则会出现错误消息。如果系统管理员设置了阻止任何未经授权的脚本在系统上运行的策略,您将看到指定的错误消息。您必须取消阻止策略或调整注册表,并且您可以运行任何脚本。
您可以绕过当前执行策略运行代码。因此,您不必篡改它,但您可以运行您的脚本。
1、同时按下Windows键+S键后,输入“ powershell ”。
2. 然后,右键点击“ Windows PowerShell ”并点击“以管理员身份运行”。
3. 当 Windows PowerShell 屏幕出现时,键入此代码并进行相应更改,然后按Enter执行它。
powershell -ExecutionPolicy ByPass -脚本文件名.ps1
[
只需将“ nameofthescript.ps1 ”替换为您尝试运行的脚本的名称即可。
示例 – 假设脚本的名称是“ myscript ”,命令将是 –
powershell -ExecutionPolicy ByPass -File myscript.ps1
]
这样您就可以运行任何脚本而无需更改当前脚本执行策略。但是,如果您要批量执行脚本或创建自动化脚本,这将不起作用。
您必须为此寻找下一个修复程序。
如果您愿意,可以更改当前的执行策略设置。
1. 再次按下Windows 键并输入“ powershell ”。
2.稍后,右键单击“ Windows PowerShell ”并点击“以管理员身份运行”以打开具有管理权限的终端。
3. 当它打开时,键入此命令以根据您的选择更改执行策略。
Set-ExecutionPolicy RemoteSigned
[
您可以将脚本执行策略设置为四种不同的模式。这些都是 -
Restricted – PowerShell 不允许在系统上运行任何脚本的默认模式。
AllSigned – 仅允许签名和授权的脚本在此模式下运行。
RemoteSigned - 在此模式下,您下载的所有脚本都必须具有可信签名的签名。
不受限制- 您可以运行您喜欢的任何脚本。受信任的签名或受信任的发布者没有界限。
示例– 假设您要将策略设置设置为“RemoteSigned”,命令将是 –
Set-ExecutionPolicy RemoteSigned
]
之后,按“ Y ”并按Enter。
4. 如果您遇到任何错误消息,只需运行此命令。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
再次,写“ Y ”并按Enter。
完成此操作后,您可以根据需要轻松运行脚本。
通过运行脚本进行测试。
注意——
脚本执行策略通常受到限制,因为配置错误或错误的脚本会对系统造成致命的损害。因此,一旦您完成了脚本的运行,您可以再次将执行策略设置为“受限”模式。
1. 以管理权限访问 PowerShell。
2. 现在,只需执行此单一代码即可限制任何策略在系统上运行。
设置 ExecutionPolicy 受限
3. 再次输入“ Y ”并按Enter 键。
之后,关闭 PowerShell 窗口。
如果您在更改执行策略时遇到任何错误消息,您可以编辑注册表编辑器。
1. 只需在任务栏的搜索框中输入“ regedit.msc ”即可。
2.之后,点击“注册表编辑器”访问它。
警告 – 您将调整您的注册表。由于注册表编辑器是您系统中非常重要的一部分,您应该事先做好注册表备份。
当注册表编辑器打开时,点击“文件”。然后点击“导出”在您的系统上创建一个新的注册表备份。
稍后,如果出现问题,您可以使用此备份。
3. 现在,以这种方式展开左侧——
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\ShellIds\ScriptedDiagnostics
4. 然后,双击“ ExecutionPolicy ”二进制值。
5. 只需在“数值数据:”框中写下“不受限制”。
6. 然后,点击“确定”保存此更改。
之后,关闭注册表编辑器。关闭注册表编辑器后,重新启动系统。
重新启动计算机后,您可以轻松运行您选择的脚本。
以上是如何在Windows 10/11的PowerShell中禁用脚本执行?的详细内容。更多信息请关注PHP中文网其他相关文章!