Linux系统下的CP命令的源代码是包含在coreutils里的。
或者使用rpm的源码包,我们可以输入命令:whereis cp
找到cp所在的路径
rpm -qf /bin/cp
使用rpm的qf参数 能够查到某个文件属于哪个rpm包
我的机子的结果:coreutils-7.2-4.fc11.src.rpm
然后再到rpmfind.net中找coreutils的src.rpm源码.
rpm -ql -p /path/to/coreutils-7.2-4.fc11.src.rpm
rpm -ivh coreutils-7.2-4.fc11.src.rpm
错误:warning: user mockbuild does not exist - using root
warning: user mockbuild does not exist - using root
warning: group mockbuild does not exist - using root
新建一个组和一个帐号就好了。
#groupadd mockbuild
#useradd mockbuild -g mockbuild
然后在安装
#rpm -ivh coreutils-7.2-4.fc11.src.rpm
然后在/usr/src/redhat/SOURCES/(这个目录的名称不一定,取决于你装的是什么系统)就可以找到相应的源代码了。
举一反三,可以找到其他命令的源代码。
也可以直接找源码包
http://ftp.gnu.org/gnu/