切换明暗模式
找不到命令与 PATH 问题
终端显示 command not found 时,先确认失败发生在命令解析阶段。登录状态、模型参数和项目规则都还没有机会执行。另一种常见症状是终端里能用,IDE 或应用里找不到;这时需要比较启动进程实际继承的环境。
一个不改系统设置的复现
下载 PATH 练习 v1.0.0,解压进入 path-lab/,先读 README,再运行:
sh
node run.mjs需要 Node 22+ 和 /bin/sh。脚本在临时目录创建本方可执行程序 bin/codexcase-check,先让子进程 PATH 只有 /usr/bin:/bin,再把实验的 bin 目录放到开头。两个子进程执行相同内容:
sh
command -v codexcase-check
codexcase-check本站在 macOS、Node v22.23.3 的 原始记录 中,第一次没有解析路径,调用报找不到命令,子进程退出 127;第二次先输出实验程序路径,再输出 codexcase-check 1.0.0,退出 0。练习脚本在确认两个预期后自身退出 0。
程序在两次检查之间没有被重新安装,变化只有子进程 PATH。这个对照将「程序不存在」与「当前进程找不到程序」分开了。实验不编辑 shell 启动文件、不改系统 PATH,也没有安装真实 Codex。
换成自己的命令时检查什么
在报错的那个终端运行以下命令,保留真实输出。PATH 可能含私人目录,分享前替换用户名与项目名:
sh
command -v codex
codex --version
printf '%s\n' "$PATH"| 观察 | 接下来检查 | 对应处理 |
|---|---|---|
command -v 无输出 | 程序是否安装、安装工具报告的目录 | 安装缺失程序,或修正当前进程 PATH |
| 路径存在,版本却不是预期 | 是否有多个安装位置、别名或包装脚本 | 核对实际来源,修正解析顺序 |
| 绝对路径可运行,名字不可运行 | 该目录是否在当前 PATH 中 | 先对当前会话添加已确认目录并复测 |
| 终端成功,IDE 失败 | 两者启动方式与可见环境是否相同 | 修正实际客户端环境,重启后重查 |
| 有路径但报权限或解释器错误 | 可执行权限、脚本首行、文件类型 | 按准确错误处理,不能只加 PATH |
先用明确的完整路径验证目标程序,再决定是否需要持久修改。路径中有空格时要正确引用;不要从不明报错直接复制一串全局修改命令。修改初始化文件前读清当前 shell 的加载规则,避免把同一路径重复追加到多个文件。安装命令请以 首次环境检查 链接的当前官方说明为准。
复测与系统边界
复测必须回到最初失败的启动方式:同一个终端、IDE 或应用,检查解析路径、版本与原命令退出码。另一个新终端成功只能说明那个进程成功,不能替代原场景。
本方实测仅覆盖 macOS 的受控 POSIX shell。Windows 可从 PowerShell 的 Get-Command codex 开始,本站未实测 Windows;shell 初始化、包管理器目录和应用继承方式需按实际环境确认。POSIX 命令查找依据见 标准 command 说明,复核于 2026-10-18。
若命令已能启动而 MCP 仍失败,继续看 MCP 分阶段检查。报告中附解析路径与脱敏 PATH 的相关部分,使用 问题报告模板 记录条件。