pnpm : 无法加载文件 C:\Users\WTK\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本。

PS D:\VUE3\vue-pure-admin-main> pnpm i pnpm : 无法加载文件 C:\Users\WTK\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?Link ID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 + pnpm i + ~~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess PS D:\VUE3\vue-pure-admin-main>

这个错误信息是由于PowerShell的执行策略限制了运行脚本。在Windows系统中,PowerShell有一个执行策略(Execution Policy)的设置,用于控制PowerShell脚本和配置文件的执行。出于安全考虑,默认情况下可能会限制执行未签名的脚本。

要解决这个问题,可以更改PowerShell的执行策略。以下是一些可用的选项:

在PowerShell中以管理员权限运行以下命令之一,以设置所需的执行策略:

  1. 以管理员权限打开PowerShell

    右键点击"开始"菜单,选择"Windows PowerShell(管理员)"或"命令提示符(管理员)"。

  2. 查看当前的执行策略

    在PowerShell中输入以下命令:

    复制代码
    Get-ExecutionPolicy

    设置执行策略

    你可以在PowerShell中设置执行策略以允许运行脚本。请注意,更改执行策略可能会影响系统的安全性,所以请谨慎操作。以下是一些可用的执行策略选项:

  3. Restricted - 默认的执行策略,不允许任何脚本运行。

  4. AllSigned - 只能运行由受信任发布者签名的脚本。

  5. RemoteSigned - 可以运行本地脚本,但是从互联网上下载的脚本必须签名。

  6. Unrestricted - 允许所有脚本运行。

  7. 在PowerShell中以管理员权限运行以下命令之一,以设置所需的执行策略:

    复制代码
    # 设置为允许运行所有本地脚本和来自互联网的签名脚本  
    Set-ExecutionPolicy RemoteSigned  
     
    # 或者设置为允许运行所有脚本(请小心使用)  
    Set-ExecutionPolicy Unrestricted
  8. 运行你的命令

    在更改了执行策略之后,应该能够运行pnpm i命令来安装依赖项。

请记住,Unrestricted策略会让你的系统更容易受到恶意脚本的攻击,所以只有在你完全信任要运行的脚本时才应使用这个策略。在生产环境或重要系统上操作时,请格外小心。

如果你不熟悉这些设置或担心安全问题,请咨询有经验的系统管理员或IT专业人员。

PS C:\Users\WTK> Get-ExecutionPolicy Restricted PS C:\Users\WTK> Set-ExecutionPolicy Unrestricted 执行策略更改 执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies 帮助主题所述。是否要更改执行策略? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为"N"): A Set-ExecutionPolicy : 对注册表项"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell"的 访问被拒绝。 要更改默认(LocalMachine)作用域的执行策略,请使用"以管理员身份运行"选项启动 Windows PowerShell。要更改当 前用户的执行策略,请运行 "Set-ExecutionPolicy -Scope CurrentUser"。 所在位置 行:1 字符: 1 + Set-ExecutionPolicy Unrestricted + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : PermissionDenied: (:) [Set-ExecutionPolicy], UnauthorizedAccessException + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyComma nd PS C:\Users\WTK>

出现的错误表明你尝试更改了计算机的执行策略,但是没有足够的权限。Set-ExecutionPolicy 尝试修改的是本地计算机(LocalMachine)范围内的策略,而这通常需要管理员权限。

为了解决这个问题,请按照以下步骤操作:

  1. 以管理员身份运行 PowerShell

    • 在搜索框中输入"PowerShell"。
    • 右键点击"Windows PowerShell"并选择"以管理员身份运行"。
  2. 在 PowerShell 中设置执行策略

    在具有管理员权限的 PowerShell 窗口中,再次尝试运行之前的命令:

    复制代码
    Set-ExecutionPolicy Unrestricted

    或者,如果你只希望更改当前用户的执行策略而不是整个系统的,可以使用 -Scope 参数:

    复制代码
    Set-ExecutionPolicy -Scope CurrentUser Unrestricted
  3. 确认执行策略已更改

    使用 Get-ExecutionPolicy 命令来确认执行策略是否已经成功更改。

  4. 请记住,将执行策略设置为 Unrestricted 可能会带来安全风险,因为它允许运行所有脚本,包括可能恶意的脚本。在生产环境或包含敏感数据的系统上,请务必谨慎操作,并考虑使用更安全的策略,如 RemoteSigned

    如果你不确定应该选择哪种执行策略,可以参考 Microsoft 的文档,或咨询你的系统管理员。在开发环境中,RemoteSigned 通常是一个合理的选择,因为它允许运行本地脚本,同时要求从互联网下载的脚本必须有有效的数字签名。

相关推荐
XH2761 分钟前
Android Retrofit用法详解
前端
鸭梨大大大3 分钟前
Spring Web MVC入门
前端·spring·mvc
你的人类朋友3 分钟前
MQTT协议是用来做什么的?此协议常用的概念有哪些?
javascript·后端·node.js
吃没吃5 分钟前
vue2.6-源码学习-Vue 初始化流程分析 (src/core/instance/init.js)
前端
XH2767 分钟前
Android Room用法详解
前端
木木黄木木1 小时前
css炫酷的3D水波纹文字效果实现详解
前端·css·3d
郁大锤1 小时前
Flask与 FastAPI 对比:哪个更适合你的 Web 开发?
前端·flask·fastapi
HelloRevit2 小时前
React DndKit 实现类似slack 类别、频道拖动调整位置功能
前端·javascript·react.js
ohMyGod_1233 小时前
用React实现一个秒杀倒计时组件
前端·javascript·react.js
eternal__day3 小时前
第三期:深入理解 Spring Web MVC [特殊字符](数据传参+ 特殊字符处理 + 编码问题解析)
java·前端·spring·java-ee·mvc