PowerShell-2.解决禁止本地执行脚本

现象

直接找到XXX.ps1右键 使用PowerShell运行没反应,然后打开PowerShel把脚本推进去显示这个:

PowerShell-2.解决禁止本地执行脚本_第1张图片

原因是因为脚本执行权限默认是Restricted,这个是禁止执行任何本地脚本。

获取当前执行权限:get-executionpolicy


然后正常解决办法可以这样:

set-executionpolicy remotesigned

remotesigned就是可以执行的了。

然后就可以了。

PowerShell-2.解决禁止本地执行脚本_第2张图片

以上是基本解决方案,但是如果是想“偷偷”打开权限方案也有:

比如直接虚拟桌面启动一个程序,然后把上面的那件事给模拟了。

或者是直接改注册表:

(X64)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell

(X32)记得偏移那个Wow.....

然后KEY:ExecutionPolicy   VALUE:remotesigned就行了。

PowerShell-2.解决禁止本地执行脚本_第3张图片

下面说下怎么找这个注册表路径:


那问题是怎么知道的是这个注册表位置,我是这么做的,开启Process Monitor然后调用设置权限的函数,然后抓取它的动作(这种通常是注册表或者本地文件),so...PowerShell-2.解决禁止本地执行脚本_第4张图片


随便试了几个杀软,目前没有对这个注册表位置进行保护。

 

 

你可能感兴趣的:(PowerShell)