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

今天在Windows10上以管理员身份运行PowerShell,当执行脚本“.\build.ps1”的时候,结果报了如下错误:

.\build.ps1 : 无法加载文件 G:\下载\metasploitable3-master\build.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 h
ttps:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ .\build.ps1
+ ~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

PowerShell在此系统上禁止运行脚本.ps1

 

什么是“.ps1”文件?

这个是PowerShell写的脚本文本,你可以在记事本中写一段PowerShell代码,然后将其保存为“xxx.ps1”,后面要使用它的时候,双击即可运行了。

这有点像批处理的“.bat”文件,也有点像VBScript的“.vbs”文件。这些都是Windows的脚本文件。

 

解决方法

解决问题肯定要找到原因,原因也不必多说,这是Windows10自身为了安全,默认设置了执行策略,执行策略可帮助你防止执行不信任的脚本。

 

解决这个问题也很简单,具体如下:

 

注意:必须先保证自己是以管理员身份打开PowerShell的;

 

1、获取有效的执行策略列表,命令如下:

PS G:\下载\metasploitable3-master> Get-ExecutionPolicy -List

Get-ExecutionPolicy -List

以上说明的是:有效的执行策略是RemoteSigned,因为当前用户的执行策略优先于为本地计算机设置的执行策略。如果有不懂RemoteSigned是什么意思?请查看:Powershell脚本5种执行权限介绍

 

2、设置执行策略,命令如下:

PS G:\下载\metasploitable3-master> set-executionpolicy remotesigned

set-executionpolicy remotesigned

 

3、现在再去执行 .ps1 脚本已经没有任何问题了。

 

4、删除执行策略

有时候我们执行完了自己的 .ps1 脚本后,还是想删除设置的执行策略,毕竟是安全第一,删除执行策略其实也很简单,原理就是设置执行策略,只不过把这个权限设置为Undefined的。

注意:要删除特定范围的执行策略,请将执行策略设置为Undefined。

以我的Windows10系统为例,我就把执行策略权限设置为Undefined就可以了,命令如下:

PS G:\下载\metasploitable3-master> set-executionpolicy Undefined

set-executionpolicy Undefined

    A+
发布日期:2019年10月20日 20:34:50  所属分类:电脑实用技术
最后更新时间:2019-10-20 20:39:42
评分: (1 票;平均数5.00 ;最高评分 5 ;用户总数1;总得分 5;百分比100.00)
标签:
付杰
免费SSL证书 HTTPS申请 安装 配置 支持通配符*
免费SSL证书 HTTPS申请 安装 配置 支持通配符*
  • ¥ 199.9元
  • 市场价:20000元
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
  • ¥ 6.8元
  • 市场价:8.8元
wordpress站群服务 泛解析二级域名 二级目录站群
wordpress站群服务 泛解析二级域名 二级目录站群
  • ¥ 1999.9元
  • 市场价:4800元
wp discux 帝国 dedecms phpcms等快速建站
wp discux 帝国 dedecms phpcms等快速建站
  • ¥ 99.9元
  • 市场价:499.9元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: