Claude Code在power shell运行异常

2026-05-01 17:58 Claude Code在power shell运行异常已关闭评论

power shell异常

在power shell窗口执行claude指令异常,而cmd窗口执行正常

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

有三种主要方法,推荐优先尝试方法一(临时生效),它最安全且无需管理员权限。

方法 优点 缺点 适用场景 操作命令
方法一:临时放宽策略(推荐) 最安全,只影响当前窗口,关闭后策略自动恢复原状。 每次新开PowerShell窗口都需要重新执行一次。 偶尔使用Claude Code,不想更改系统设置 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
方法二:为当前用户永久放宽策略 一次设置,永久有效,仅影响当前用户,不影响其他用户,安全性较高。 需要手动执行命令进行设置。 长期、频繁使用Claude Code的开发场景。 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
方法三:绕过策略运行单次命令 无需更改任何系统设置,直接运行。 命令较长,每次都需要完整输入。 快速测试或在不希望更改策略的受限环境中使用。 powershell -ExecutionPolicy Bypass -Command "claude"

排查问题

找到问题了!claude 已安装,但 npm 的全局安装目录没有在系统 PATH 中。

解决方法ATH | grep -i "appdata/roaming/npm" || echo "npm folder not in PATH"
方法一:通过系统设置添加 PATH(推荐)

1. 按 Win + R,输入 sysdm.cpl,回车
2. 点击"高级"选项卡 → "环境变量"
3. 在"用户变量"中找到 Path,点击"编辑"
4. 点击"新建",添加:
C:\Users\pancoit\AppData\Roaming\npm
5. 点击"确定"保存,然后重启 PowerShell 

方法二:通过 PowerShell 临时添加(仅当前会话)

$env:Path += ";C:\Users\pancoit\AppData\Roaming\npm"

方法三:通过 PowerShell 永久添加

"Path",
)

然后重启 PowerShell 即可生效。

在系统的power shell运行正常,在当前编辑器的ps窗口中运行提示上述错误

Claude 在系统 PowerShell 中运行正常,但在当前编辑器的 PowerShell 窗口中无法运行。这是因为编辑器的 PowerShell 终端没有继承完整的系统环境变量 PATH

解决方案

方法 1:在编辑器终端中手动添加 PATH(推荐)

在编辑器的 PowerShell 窗口中执行:

$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

然后就可以运行:

claude

方法 2:直接指定完整路径运行

& "$env:LOCALAPPDATA\Claude\claude.exe"

或者:

& "$env:PROGRAMFILES\Claude\claude.exe"

方法 3:配置编辑器的终端设置

如果您使用的是 VS Code 或其他编辑器,可以在设置中配置终端启动时自动加载完整的 PATH:

VS Code 设置 (settings.json):

{
    "terminal.integrated.env.windows": {
        "PATH": "${env:PATH}"
    }
}

方法 4:创建别名(临时方案)

在编辑器的 PowerShell profile 中添加:

Set-Alias claude "$env:LOCALAPPDATA\Claude\claude.exe"

当前文章价值1.77元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/3958.html ,谢谢支持!

资源分享

001-ViewPager实现Fragment懒加载,相邻的界面Fragment方法getUserVisibleHint()返回了true,导致重新加载数据 001-ViewPager实现Fragment懒
重置MySQL数据库登录账号root登录密码 重置MySQL数据库登录账号roo
002-ERROR 2003 (HY000) Can’t connect to MySQL server on ‘localhost’ (10061 Unknown error) 002-ERROR 2003 (HY000)
Android应用微信登录功能实现 Android应用微信登录功能实现

评论已关闭!