哪个命令的源代码在哪里?

哪个命令的源代码在哪里?

我在 coreutils 中查找了一下,也sudo apt-cache search which 查看了它的手册页,但没有找到它。

我想添加一个参数来列出可执行文件的依赖项,我认为这会很有用。

答案1

至少在我的 Ubuntu 22.04 上,/usr/bin/which该软件包提供了debianutils

$ update-alternatives --list which
/usr/bin/which.debianutils
$ 
$ dpkg -S /usr/bin/which.debianutils 
debianutils: /usr/bin/which.debianutils

它是一个 shell 脚本 - 因此不需要下载源代码:

$ file /usr/bin/which.debianutils 
/usr/bin/which.debianutils: POSIX shell script, ASCII text executable

答案2

在 Ubuntu 18.04.6 LTS 中,/usr/bin/which普通(非 root)用户的路径为:

$ which which
/usr/bin/which

上面是一个符号链接:

$ file /usr/bin/which
/usr/bin/which: symbolic link to /bin/which

目标是一个shell脚本:

$ file /bin/which
/bin/which: POSIX shell script, ASCII text executable

shell 脚本由debianutils

$ dpkg -S /bin/which
debianutils: /bin/which

上述答案是steeldriver答案的变体,显示Ubuntu 18.04与Ubuntu 22.04略有不同。

在 Ubuntu 18.04 下update-alternatives报告错误which

$ update-alternatives --list which
update-alternatives: error: no alternatives for which

相关内容