跳到主内容

「command not found」怎么修?

2026-10-30 发布 来源:我告诉你AI导航 阅读

AI 编程工具的第一道坎,常常还没开工就来了:安装一路绿灯,敲下 claude,屏幕却回一句 command not found: claude。工具本身多半没坏,是 shell 没找到这条命令——安装程序把可执行文件放进某个目录,...

AI 编程工具的第一道坎,常常还没开工就来了:安装一路绿灯,敲下 claude,屏幕却回一句 command not found: claude。工具本身多半没坏,是 shell 没找到这条命令——安装程序把可执行文件放进某个目录,PATH 环境变量负责告诉 shell 去哪些目录找,两者没接上头,报错就来。好消息是这类问题的排查成本极低,这篇按顺序给五步,从最便宜的新开终端走起,绝大多数人在前两步就解决了。

报错在说:PATH 里没有它

先读懂报错。command not found: claude 的意思很字面:shell 在 PATH 列出的所有目录里翻了一遍,没找到名为 claude 的可执行文件。背后只有两种可能:一是根本没装成功,二是装了但目录不在 PATH 里。区分办法是先确认安装状态,这决定了往哪个方向修——没装好回安装环节,装了没进 PATH 就补 PATH。方向定了,后面每一步才不白走。

第一招:新开终端再试

PATH 在终端会话启动时读取,安装程序改了配置,已经开着的旧会话并不知道。所以第一步成本最低:关掉当前终端,新开一个再敲 claude。很多人卡在这一步之前——装完就在原窗口反复敲,越敲越怀疑人生。新开终端能解决的比例不低,先做这一步,再谈别的。

确认装没装,再看装到哪

新终端仍报错,第二步确认安装本身:类 Unix 系统敲 which claude,Windows PowerShell 敲 where.exe claude,能吐出路径说明装了,报错说明安装环节就没走通,回安装教程重来一遍。装了的话,记下它吐出的路径——下一步的目标,就是让这个路径出现在 PATH 里。

把 ~/.local/bin 请进 PATH

原生安装器把可执行文件放在 ~/.local/bin,部分系统的默认 PATH 并不含这个目录,装完自然找不到。处理是把它写进 shell 配置文件(bash 加 .bashrc,zsh 加 .zshrc),补上 export PATH=$HOME/.local/bin:$PATH,保存后新开终端生效。npm 方式安装的,全局 bin 目录用 npm config get prefix 查出来,同样补进 PATH。npm 全局操作若伴随 Permission denied,那是权限问题,转npm 权限一篇处理,本篇不展开。

WSL 与 PowerShell 是两个世界

Windows 用户要特别留意环境隔离:WSL 是一套独立的 Linux 环境,PowerShell 是另一套,两边各有各的 PATH、各有各的安装。在 PowerShell 里装的 claude,进 WSL 敲不出来是正常现象,反过来也一样。在哪边用就在哪边装,别指望一边的安装对另一边自动生效。分不清自己在哪个环境时,看 PATH 的输出就一目了然:WSL 里 echo $PATH 是 Linux 风格的冒号分隔,PowerShell 里 $env:PATH 是 Windows 风格的分号分隔,两种长相不会认错。

环境查安装的命令PATH 的输出长相与另一侧的关系
类 Unix 终端which claudeecho $PATH,冒号分隔与 Windows 侧各有一套
WSLwhich claudeLinux 风格的冒号分隔PowerShell 里装的在这边敲不出来
PowerShellwhere.exe claude$env:PATH,分号分隔在 WSL 里装的对这边不生效

双版本并存就卸一个

排查到最后还有一种情形:两个版本的 claude 都在——一个在 npm 全局目录,一个在 ~/.local/bin,PATH 的顺序决定谁被找到,版本行为对不上号,时好时坏。此时保留一个、卸载另一个,冲突即消。留哪个看安装方式偏好,拿不准就跑 claude doctor 看健康报告,报告怎么读见三命令排查一篇。Codex 用户遇到同款报错,处理思路一致,可对照Codex 安装一篇。想让这五步用得顺手,可以让 DeepSeek 按你的系统把命令整理成一张排查卡片,再用 Kimi 查所用 shell 的 PATH 配置语法差异,下次报错照单走完即可。

命令找不到速查

  • 报错字面:PATH 列的目录里翻不到 claude
  • 第一招新开终端,PATH 是会话启动时读的
  • which 或 where 确认装没装,再定方向
  • ~/.local/bin 与 npm 全局 bin 都要补进 PATH
  • WSL 与 PowerShell 各装各的,双版本卸一个

命令找不到怎么办速查

  • PATH 改了还是找不到怎么办?:确认写进了正确的配置文件、写对了目录,然后新开终端验证;旧会话不会自动重读配置。
  • 两个版本都要留着行不行?:不建议。两份并存只会互相抢位,版本与行为对不上号;留常用的那个,另一个卸干净。
  • 在 WSL 里装还是在 Windows 装?:看工作场景——代码库在 WSL 文件系统里就在 WSL 装,主要在 Windows 侧工作就装 PowerShell 版;两边都用就两边各装一次。

反馈页面信息

请描述需要更正的地方,页面标题和网址会自动附上。

也可以发邮件至 [email protected]