如果我对某个Linux工具的源代码感兴趣,比如factor
,那么在哪里可以找到该工具的源代码呢?
你也可以找到该二进制文件对应的软件包并下载其源代码。
在Debian(以及Ubuntu和任何基于Debian的操作系统)上,你可以这样做:
$ dpkg -S /usr/bin/factor coreutils: /usr/bin/factor $ apt-get source coreutils
第一个命令将检查包含你要搜索的文件的软件包(使用“which factor
”命令查找在输入“factor
”时将执行哪个二进制文件)。
第二个命令将下载并解压缩软件包的源代码(包括构建软件包所应用的补丁),解压后的文件会存放在当前目录下,因此请在专门的或临时的目录中执行该命令。
我相信基于rpm的发行版也有类似的机制,但我不知道它们的命令是什么。
我的操作是输入
man factor
我找到了 "GNU coreutils 6.10" 并查找了 "coreutils",...发现了 joschi 刚才链接的网站。
$ rpm -qf /usr/bin/factor这将打印出软件包名称。相反,使用以下命令:
$ rpm -qif /usr/bin/factor你将得到有关软件包的信息,包括它的主页(在许多情况下)。
factor --help
以查看它来自coreutils)会得到该软件包作为第二个结果。只需两次点击,我就可以在线浏览factor.c。