执行vue -V报错 无法加载 ****\nodejs\vue.ps1 造成

 

PS C:\WINDOWS\system32> vue -v
vue : 无法加载文件 d:\ProgramFiles\nodejs\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 http://go.microsoft
.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ vue -v
+ ~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
PS C:\WINDOWS\system32> get-ExecutionPolicy

 

 关于执行策略 - PowerShell | Microsoft Docs

https://docs.microsoft.com/zh-cn/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7.2 看这里比较晕。

===


出现这个报错的原因:在电脑上启动 Windows PowerShell 时,执行策略极大可能是 Restricted(默认设置)。Restricted 策略不允许任何脚本运行,防止执行不信任的脚本。

PowerShell的4中执行策略:

名称说明
Restricted 禁止运行任何脚本和配置文件(默认)
AllSigned 可以运行脚本,但要求所有脚本和配置文件由可信发布者签名,包括在本地计算机上编写的脚本
RemoteSigned 可运行脚本,但要求从网络上下载的脚本和配置文件由可信发布者签名;不要求对已经运行和本地计算机编写的脚本进行数字签名
Unrestricted 可以运行未签名的脚本

解决方法:
1、可以先执行下面命令,可以看到当前默认的执行策略是Restricted

get-ExecutionPolicy
PS E:\PRJs\Web\hanfu-mall> get-ExecutionPolicy
Restricted
PS E:\PRJs\Web\hanfu-mall> set-ExecutionPolicy RemoteSigned
set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。 要更改默认(Loc   
alMachine)作用域的执行策略,请使用“以管理员身份运行”选项启动 Windows PowerShell。要更改当前用户的执行策略,请运行 "Set-ExecutionPolicy -Scope C   
urrentUser"
所在位置 行:1 字符: 1
+ set-ExecutionPolicy RemoteSigned
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand
PS E:\PRJs\Web\hanfu-mall> vue -v
Usage: vue <command> [options]

 

 

2、修改策略为RemoteSigned,执行下面命令并选择Y即可

set-ExecutionPolicy RemoteSigned


 
posted @ 2022-05-20 11:39  海蓝7  阅读(209)  评论(0编辑  收藏  举报