Windows上PowerShell默认禁止运行 *.ps1 脚本原因与解决方法

本文介绍了如何在PowerShell中解除对.ps1脚本的执行限制,以执行Express包中的“.uild.ps1”脚本。首先,需要以管理员权限打开PowerShell,然后通过`Get-ExecutionPolicy -List`查看执行策略。接着,使用`Set-ExecutionPolicy RemoteSigned`设置允许执行远程签名的脚本。执行完成后,可以正常运行.ps1文件。但为了安全,建议在脚本执行完毕后,通过`Set-ExecutionPolicy Undefined`恢复默认的执行策略,防止潜在的安全风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、问题描述

当调用express包中的“.\build.ps1”脚本时,由于安全系统的设置,终端会阻止‘.ps1’类型的脚本文件运行,导致指令无法执行

终端报错

 二、解决方法 

1、以管理员身份打开PowerShell

在这里插入图片描述

2、获取有效的执行策略列表

Get-ExecutionPolicy -List

以上说明的是:有效的执行策略是RemoteSigned,因为当前用户的执行策略优先于为本地计算机设置的执行策略。

3、设置执行策略

set-executionpolicy remotesigned

执行完当前指令后已经解除安全机制对‘.ps1’类型的脚本文件的约束,此时再去执行.ps1脚本已经没有问题了

 

此时再查看执行策略列表可以发现,LocalMachine对应的权限设置已经改为RemoteSigned了,这也就意味着可以执行.ps1脚本了。 

4、删除执行策略

出于安全考虑,在执行完.ps1脚本后最好重新设置好相关约束,删除设置的执行策略(原理就是设置执行策略,只不过把这个权限设置为Undefined的)

set-executionpolicy Undefined

 

 此时再查看执行策略列表可以发现所有权限设置又都变回Undefined了,意味着恢复执行策略成功,系统继续执行之前的安全设置。 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值