PowerShell 执行策略:fnm管理软件安装nodejs无法运行npm,错误信息:about_Execution_Policies

通过fnm管理软件安装NodeJS后添加环境变量依然无法执行npm,提示无法加载文件,错误如下:

PowerShell 执行策略简介:

  • PowerShell 执行策略是一项安全功能,用于控制 PowerShell 加载配置文件和运行脚本的条件。 此功能有助于防止恶意脚本的执行。
  • 在 Windows 计算机上,可以为本地计算机、当前用户或特定会话设置执行策略。 还可使用组策略设置为计算机和用户设置执行策略。
PowerShell 执行策略仅在 Windows 平台上执行。 具体如下(微软官方解释):

设置默认执行策略。

Restricted(适用于 Windows 客户端)。

RemoteSigned(适用于 Windows 服务器)。

AllSigned 脚本可以运行,在运行来自尚未分类为可信或不可信的发布者的脚本之前会提示你。但存在运行已签名的恶意脚本的风险。要求所有脚本和配置文件都由受信任的发布者签名,包括在本地计算机上编写的脚本。
Bypass 不阻止任何操作,并且没有任何警告或提示。此执行策略专为将 PowerShell 脚本内置到较大应用程序中的配置,或以 PowerShell 为具有自己的安全模型的程序的基础的配置而设计。
Default 设置默认执行策略。Restricted(适用于 Windows 客户端)。RemoteSigned(适用于 Windows 服务器)。
RemoteSigned Windows 服务器计算机的默认执行策略。脚本可以运行。需要受信任的发布者对从 Internet 下载的脚本和配置文件(包括电子邮件和即时消息程序)的数字签名。在本地计算机上编写且不是从 Internet 下载的脚本不需要数字签名。如果脚本已解除阻止(例如通过使用 Unblock-File cmdlet),则运行从 Internet 下载且未签名的脚本。存在运行来自 Internet 以外来源的未签名脚本以及可能存在恶意的签名脚本的风险。
Restricted Windows 客户端计算机的默认执行策略。允许单个命令,但不允许脚本。阻止运行所有脚本文件,包括格式和配置文件 (.ps1xml)、模块脚本文件 (.psm1) PowerShell 配置文件 (.ps1)。
Undefined 当前范围内没有设置执行策略。如果所有作用域内的执行策略均为Undefined,则对于 Windows 客户端,有效执行策略为 Restricted;对于 Windows Server,有效执行策略为 RemoteSigned。
Unrestricted 非 Windows 计算机的默认执行策略,不能更改。未签名的脚本可以运行。 存在运行恶意脚本的风险。在运行非来自本地 Intranet 区域的脚本和配置文件之前警告用户。
备注

若要更改执行策略,请执行以下操作:

bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy <PolicyName>

例如:

bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

若要在特定范围内设置执行策略,请执行以下操作:

bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy <PolicyName> -Scope <scope>

例如:

bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

更改执行策略的命令可能会成功,但仍然不会更改有效的执行策略。

例如,为本地计算机设置执行策略的命令可能会成功,但会被当前用户的执行策略覆盖。

  • 删除执行策略
    若要删除特定范围的执行策略,请将执行策略设置为 Undefined。
    例如,若要删除本地计算机所有用户的执行策略:
bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope LocalMachine

若要删除 Scope 的执行策略,请执行以下操作:

bash 复制代码
Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope CurrentUser

如果未在任何范围内设置执行策略,则有效执行策略 Restricted,这是 Windows 客户端的默认值。

可通过命令查看策略:

bash 复制代码
Get-ExecutionPolicy -List

备注:nodejs需要手动配置环境变量再次执行策略更改。

相关推荐
程序员清洒2 小时前
Flutter for OpenHarmony:GridView — 网格布局实现
android·前端·学习·flutter·华为
VX:Fegn08952 小时前
计算机毕业设计|基于ssm + vue超市管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
0思必得02 小时前
[Web自动化] 反爬虫
前端·爬虫·python·selenium·自动化
LawrenceLan2 小时前
Flutter 零基础入门(二十六):StatefulWidget 与状态更新 setState
开发语言·前端·flutter·dart
秋秋小事2 小时前
TypeScript 模版字面量与类型操作
前端·typescript
2401_892000523 小时前
Flutter for OpenHarmony 猫咪管家App实战 - 添加提醒实现
前端·javascript·flutter
Yolanda943 小时前
【项目经验】vue h5移动端禁止缩放
前端·javascript·vue.js
广州华水科技4 小时前
单北斗GNSS形变监测一体机在基础设施安全中的应用与技术优势
前端
EndingCoder4 小时前
案例研究:从 JavaScript 迁移到 TypeScript
开发语言·前端·javascript·性能优化·typescript
阿珊和她的猫6 小时前
React 路由:构建单页面应用的导航系统
前端·react.js·状态模式