window安装node后发现npm脚本被禁止

你这个错误的原因是 PowerShell 的执行策略(Execution Policy) 禁止运行 .ps1 脚本文件(npm 在 Windows 上会生成 npm.ps1 脚本),这是 Windows 为了防止恶意脚本自动运行而设置的安全限制。

解决方案(步骤清晰,新手也能操作)

1. 以「管理员身份」打开 PowerShell

这是关键前提!普通权限无法修改执行策略,必须用管理员权限:

  • 按下 Win + X,在弹出的菜单中选择「Windows PowerShell (管理员)」(或「终端(管理员)」,Win11 系统);
  • 如果弹出用户账户控制(UAC)提示,点击「是」允许。
2. 查看当前的执行策略

输入以下命令,查看当前 PowerShell 的执行策略(默认可能是 Restricted,即禁止所有脚本):

powershell 复制代码
Get-ExecutionPolicy

如果输出 Restricted,说明确实是执行策略导致的问题。

3. 修改执行策略为「允许本地脚本」

输入以下命令,将执行策略修改为 RemoteSigned(推荐,安全且满足需求):

powershell 复制代码
Set-ExecutionPolicy RemoteSigned
  • 执行后会提示「是否要更改执行策略」,输入 Y(或 A 表示全部允许),按下回车即可。
4. 验证配置并测试 npm
  • 首先验证执行策略是否修改成功,再次输入:

    powershell 复制代码
    Get-ExecutionPolicy

    若输出 RemoteSigned,说明修改生效;

  • 然后测试 npm 是否可用,输入:

    powershell 复制代码
    npm -v

    此时应该能正常显示 npm 的版本号(和你之前的 node 版本匹配,比如 10.7.0 之类),不会再报错。

补充说明(可选,了解即可)

  • RemoteSigned 执行策略的含义:允许运行本地编写的脚本(不需要数字签名),但运行从网络下载的脚本必须有可信的数字签名,既安全又不影响日常开发;
  • 如果你后续需要更宽松的策略(比如允许所有脚本,不推荐),可以用 Set-ExecutionPolicy Unrestricted,但不建议在生产环境使用;
  • 修改的执行策略是「当前用户」级别的,不会影响其他用户,也不会修改系统核心配置,放心操作。
相关推荐
爱上妖精的尾巴32 分钟前
6-4 WPS JS宏 不重复随机取值应用
开发语言·前端·javascript
似水流年QC1 小时前
深入探索 WebHID:Web 标准下的硬件交互实现
前端·交互·webhid
陪我去看海1 小时前
测试 mcp
前端
speedoooo2 小时前
在现有App里嵌入一个AI协作者
前端·ui·小程序·前端框架·web app
全栈胖叔叔-瓜州2 小时前
关于llamasharp 大模型多轮对话,模型对话无法终止,或者输出角色标识User:,或者System等角色标识问题。
前端·人工智能
三七吃山漆2 小时前
攻防世界——wife_wife
前端·javascript·web安全·网络安全·ctf
用户47949283569152 小时前
面试官问"try-catch影响性能吗",我用数据打脸
前端·javascript·面试
GISer_Jing3 小时前
前端营销技术实战:数据+AI实战指南
前端·javascript·人工智能
GIS之路3 小时前
使用命令行工具 ogr2ogr 将 CSV 转换为 Shp 数据(二)
前端
嘉琪0013 小时前
Vue3+JS 高级前端面试题
开发语言·前端·javascript