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需要手动配置环境变量再次执行策略更改。

相关推荐
浮生望5 分钟前
BFF架构实战:用Express+SSE为Vue3搭建安全的流式对话中间层
前端
先吃饱再说29 分钟前
React 组件通信:从 Props 单向传递到自定义事件
前端·react.js·前端框架
swipe33 分钟前
05|(前端转后全栈)不手写一堆 SQL,后端怎么操作数据库?MyBatis-Plus 入门
前端·后端·全栈
swipe38 分钟前
04|(前端转后全栈)前端状态为什么不够用?从页面数据到 MySQL 持久化
前端·后端·全栈
橘子星39 分钟前
别光看教程!手把手拆解 React Todo 项目,一文吃透 5 个核心概念
前端·javascript
大白要努力!1 小时前
纯前端实现 PDF 加水印工具 —— 零后端、支持中文、实时预览
前端·pdf·html
石小石Orz1 小时前
TRAE SOLO实战:实现一个桌面3D助手
前端·人工智能
蜡台1 小时前
使用 uni-popup 实现数据选择器Data-Picker
前端·javascript·html·uniapp·uni-popup·data-picker
拆房老料1 小时前
BaseMetas FileView 1.2.0 发布:Office/WPS 大文件预览与内存安全优化实测
前端·产品运营·开源软件
blns_yxl1 小时前
Promise封装Fetch + 重试机制(HTML+JS)
前端·javascript·html