/usr/bin/type 与 bash 的内置 type 命令

/usr/bin/type 与 bash 的内置 type 命令

我正在阅读一篇关于各种 Linux 命令的文章,这些命令可以显示搜索路径中程序的位置,包括whichtypewhereis。文章说这type是一个内置的 bash 命令,当我运行type type它时确实输出“type is a shellbuiltin”。但是,当我运行时which type,而不是不输出任何内容(这是AskUbuntu post),它输出“/usr/bin/type”。which由于我使用 Fedora 而不是 Ubuntu,因此不同的发行版是否会导致不同的输出?另外,为什么我的系统上会有一个单独的程序被调用/usr/bin/type,它和内置的bash命令有什么区别?另外,我还注意到/usr/bin/cd我的系统上有一个程序,同时cd也是一个内置的bash命令。我也知道 bash 内置time命令和/usr/bin/time程序之间的区别,但似乎/usr/bin/type和内置类型命令在我的系统上做几乎相同的事情。

答案1

在Fedora中,bash包提供了一个文件/usr/bin/type

https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/b/bash-5.2.21-2.fc40.x86_64.html

由于 type 是 bash 的内置文件,因此 /usr/bin/type 文件很可能是 bash 的符号链接。

相关内容