PowerShell因为在此系统中禁止执行脚本的解决方法(win10 powershell打不开)难以置信

随心笔谈2年前发布 admin
199 0 0

文章摘要

在PowerShell中尝试运行脚本时,如果出现“无法加载文件******.ps1”的错误,通常是因为系统执行策略被设置为Restricted,该策略禁止任何脚本运行。要解决此问题,可以将执行策略更改为RemoteSigned,这样脚本可以被安全地执行。文章还提供了查看帮助文档的方法(如“get-help about_signing”),并解释了如何对脚本进行签名以使其符合Windows PowerShell的执行策略。此外,文章还提到了在CMD中运行PowerShell脚本的几种方法,如使用-p文件参数或-c命令。通过这些方法,可以在不更改执行策略的情况下绕过限制,运行所需的脚本。



在Powershell直接脚本时会出现:

无法加载文件 ******.ps1,因为在此系统中禁止执行脚本。有关详细信息,请参阅 “get-help about_signing”。

所在位置 行:1 字符: 17

+ E:\Test\test.ps1 <<<<

+ CategoryInfo : NotSpecified: (:) [], PSSecurityException

+ FullyQualifiedErrorId : RuntimeException

ps1的内容:

PowerShell因为在此系统中禁止执行脚本的解决方法(win10 powershell打不开)难以置信

在powershell中执行 set-ExecutionPolicy RemoteSigned

PowerShell因为在此系统中禁止执行脚本的解决方法(win10 powershell打不开)难以置信

下图可以看到原来是无法运行对的,执行了上面的命令后就可以了,如下图

PowerShell因为在此系统中禁止执行脚本的解决方法(win10 powershell打不开)难以置信

查看“get-help about_signing”:

主题

about_signing

简短说明

说明如何对脚本进行签名以使其符合 Windows PowerShell 执行策略。

详细说明

Restricted 执行策略不允许任何脚本运行。

AllSigned 和 RemoteSigned 执行策略可防止 Windows PowerShell 运行没有数字签名的脚本。

本主题说明如何运行所选未签名脚本(即使在执行策略为 RemoteSigned 的情况下),还说明如何对

脚本进行签名以便您自己使用。

有关 Windows PowerShell 执行策略的详细信息,请参阅 about_Execution_Policy。

允许运行签名脚本

——————————-

首次在计算机上启动 Windows PowerShell 时,现用执行策略很可能是 Restricted(默认设置)。

Restricted 策略不允许任何脚本运行。

若要了解计算机上的现用执行策略,请键入:

get-executionpolicy

若要在本地计算机上运行您编写的未签名脚本和来自其他用户的签名脚本,请使用以下命令将计算机上的

执行策略更改为 RemoteSigned:

set-executionpolicy remotesigned

有关详细信息,请参阅 Set-ExecutionPolicy。

执行“”:

执行策略更改

执行策略可以防止您执行不信任的脚本。更改执行策略可能会使您面临 about_Execution_Policies

帮助主题中所述的安全风险。是否要更改执行策略?

[Y] 是(Y) [N] 否(N) [S] 挂起(S) [?] 帮助 (默认值为“Y”): y

Run a CMD batch file

To run a batch script from the CMD shell, save the file as plain ASCII text with the file extension .CMD, then from the command line, enter the name of the script and press return.

C:\Batch> Demo.cmd

To run a batch file from within another batch file, use the CALL command, otherwise the first script will exit without performing any further commands.

It is also possible to run batch scripts with the old (Windows 95 style) .BAT extension, but be aware that these will set ERRORLEVEL differently.

Run a Powershell script

To run a PowerShell script from the CMD shell:

复制代码 代码如下:

C:\> powershell -file “c:\batch\demo.ps1”

Run a VBScript file

To run a VBScript from the CMD shell:

复制代码 代码如下:

C:\> cscript c:\batch\demo.vbs

“The method of the enterprising is to plan with audacity and execute with vigor” ~ John Christian Bovee

© 版权声明

相关文章