【报错问题】在visual studio 终端使用npm -v后报错禁止运行脚本怎么处理

发布于:2025-03-14 ⋅ 阅读:(18) ⋅ 点赞:(0)

在这里插入图片描述
PS C:\Users\10449> npm -v
npm : 无法加载文件 D:\node\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1

  • npm -v
  •   + CategoryInfo          : SecurityError: (:) [],PSSecurityException
      + FullyQualifiedErrorId : UnauthorizedAccess
    

这个错误是因为 PowerShell 的执行策略(Execution Policy)限制了脚本的运行。默认情况下,PowerShell 的执行策略可能是 Restricted,这会阻止任何脚本的运行,包括 npm 命令。

以下是解决这个问题的步骤:


1. 检查当前的执行策略

  1. 打开 PowerShell(以管理员身份运行)。
  2. 运行以下命令检查当前的执行策略:
    Get-ExecutionPolicy
    
    • 常见的执行策略包括:
      • Restricted:禁止运行任何脚本。
      • AllSigned:只允许运行经过数字签名的脚本。
      • RemoteSigned:允许运行本地脚本,但远程脚本必须经过数字签名。
      • Unrestricted:允许运行所有脚本。

2. 更改执行策略

为了允许运行 npm 命令,你可以将执行策略更改为 RemoteSignedUnrestricted

方法 1:临时更改执行策略
  1. 在 PowerShell 中运行以下命令:
    Set-ExecutionPolicy RemoteSigned -Scope Process
    
    • 这将仅在当前 PowerShell 会话中更改执行策略,关闭 PowerShell 后会恢复默认设置。
方法 2:永久更改执行策略
  1. 以管理员身份运行 PowerShell。
  2. 运行以下命令:
    Set-ExecutionPolicy RemoteSigned
    
    • 这将永久更改执行策略。
    • 如果系统提示确认,输入 Y 并按回车。

3. 验证更改

  1. 运行以下命令检查执行策略是否已更改:

    Get-ExecutionPolicy
    
    • 如果显示 RemoteSignedUnrestricted,说明更改成功。
  2. 再次运行 npm -v 检查是否正常工作:

    npm -v
    
    • 如果显示 npm 的版本号,说明问题已解决。

4. 如果问题仍然存在

如果更改执行策略后问题仍然存在,可以尝试以下方法:

方法 1:使用命令提示符(CMD)
  1. 打开命令提示符(CMD),而不是 PowerShell。
  2. 运行以下命令:
    npm -v
    
    • 在 CMD 中,执行策略不会影响 npm 命令。
方法 2:修复 Node.js 安装
  1. 重新安装 Node.js:
    • 访问 Node.js 官网 下载最新版本。
    • 运行安装程序,确保选择 Add to PATH 选项。
  2. 重新打开 PowerShell 或 CMD,运行 npm -v 检查是否正常工作。

5. 恢复执行策略(可选)

如果你不希望永久更改执行策略,可以在完成操作后将其恢复为默认值:

  1. 以管理员身份运行 PowerShell。
  2. 运行以下命令:
    Set-ExecutionPolicy Restricted
    

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到