场景

记录一次使用 Node.js 程序命令的报错,如下

在这里插入图片描述

Windows PowerShell
版权所有(C) Microsoft Corporation。保留所有权利。

安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows

PS C:\Users\10765\Desktop> codex
codex : 无法加载文件 D:\dev\nodejs\codex.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ codex
+ ~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
PS C:\Users\10765\Desktop>
PS C:\Users\10765\Desktop>
PS C:\Users\10765\Desktop> claude
claude : 无法加载文件 D:\dev\nodejs\claude.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ claude
+ ~~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
PS C:\Users\10765\Desktop>
PS C:\Users\10765\Desktop>
PS C:\Users\10765\Desktop>

奇怪的是,只有在桌面上或其他位置,鼠标右键选择 在终端中打开在此处打开 Powershell 窗口 才这样

在这里插入图片描述

用 Win + R,敲 CMD 命令,在这样的窗口中,就不报这个错误,真真奇怪

在这里插入图片描述

解决

因为两者方式的允许策略不同,可通过下面这两方式设置

(1)临时的

在窗口里敲下面这个命令,临时设置

Set-ExecutionPolicy RemoteSigned -Scope Process

如下

在这里插入图片描述

(2)长期的

敲下面这个命令

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

如下

在这里插入图片描述

再次打开命令窗口,也不报错

在这里插入图片描述

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐