在 Linux 系统中,cd
命令是 shell(如 Bash、Zsh 等)的内置命令(built-in),而不是一个独立的可执行文件。因此,你无法通过 which
或 whereis
找到它的独立路径,但可以通过以下方法验证和定位:
cd
是 shell 内置命令运行以下命令确认:
type cd
输出示例:
cd is a shell builtin
或使用:
command -v cd
输出:
cd
cd
必须是内置命令?cd
是外部命令,它只能改变自己的工作目录,无法影响父 shell 的目录。内置到 shell 中才能直接修改当前 shell 的环境。虽然 cd
本身是内置的,但它的实现代码位于:
- Bash 源码:在 Bash 的源代码中(如 builtins/cd.def
文件)。
- Shell 的二进制文件:如 /bin/bash
或 /bin/zsh
中包含了内置命令的逻辑。
echo
、pwd
、export
等常用命令也可能是内置的(可通过 type 命令名
验证)。
cd
是 shell 的内置功能,没有独立的可执行文件路径。