今天在项目里用vscode自带命令行工具全局安装nrm,装完下一步nrm ls查看可使用的源,结果报错:
nrm : 无法加载文件 C:\Users\qingxuan\AppData\Roaming\npm\nrm.ps1,因为在此系统上禁止运行脚本
百度除了解决方案,大概原因是计算机的执行策略限制导致的,需要更改计算机执行策略,使用命令
set-ExecutionPolicy RemoteSigned
很不幸继续报错,报错信息如下:
set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。 要
更改默认(LocalMachine)作用域的执行策略,请使用“以管理员身份运行”选项启动 Windows PowerShell。要更改当前用户的执行策略,请运行 "Set-
ExecutionPolicy -Scope CurrentUser"。
所在位置 行:1 字符: 1
+ set-ExecutionPolicy RemoteSigned
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand
主要是这两句,提供了解决方法
1、要更改默认(LocalMachine)作用域的执行策略,请使用“以管理员身份运行”选项启动 Windows PowerShell。
2、要更改当前用户的执行策略,请运行 "Set-ExecutionPolicy -Scope CurrentUser"。
想到计算机默认登录当前用户(最主要是不想打开powershell)就用了第二种方法,完美解决问题。