红联Linux门户
Linux帮助

如何查看linux命令源代码

发布时间:2011-09-05 23:31:34来源:红联作者:静静飞舞
用linux一段时间了,有时候想看看ls、cat、more等命令的源代码,在下载的内核源码中用cscope没能找到,在网上搜索了一下,将方法总结如下:

以搜索ls命令源码为例,先搜索命令所在包,命令如下:
lpj@lpj-linux:~$ which ls
/bin/ls

用命令搜索该软件所在包,代码如下:
lpj@lpj-linux:~$ dpkg -S /bin/ls
coreutils: /bin/ls

从上一步中可以知道ls命令的实现在包coreutils中,用apt安装(说安装有些歧义,主要是区分apt-get -d)该包的源代码然后解压,代码如下:
sudo apt-get source coreutils
####cd /usr/src/coreutils-XXX #XXX表示版本号
cd .
sudo tar zxvf coreutils-XXX.tar.gz

或者只下载源码,然后手动打补丁再解压,代码如下:
sudo apt-get -d source coreutils
cd /usr/src
tar zxvf coreutils-XXX.tar.gz
gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件
patch -p0 < coreutils-XXX.diff
cd coreutils-XXX

OK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了

参考网站:http://zhan.renren.com/ilinux
文章评论

共有 144 条评论

  1. 乔木在南 于 2011-11-28 13:28:03发表:

    额……

  2. lxyz007 于 2011-11-19 20:29:18发表:

    MARK(5ty(

  3. 菜鸟生涯 于 2011-11-18 15:42:02发表:

    对于我来说好像有点高深

  4. huiyuyu 于 2011-11-18 12:59:32发表:

    看帖要回帖啊~~~精品贴更是

  5. guwujian 于 2011-11-17 23:38:34发表:

    非常棒

  6. zxh1986123 于 2011-11-16 14:00:15发表:

    很犀利

  7. chuangjinweilai 于 2011-11-10 15:54:21发表:

    看我头像就该知道我听的有多认真……

  8. 静待世事 于 2011-11-08 20:33:34发表:

    学习……

  9. ystianyu 于 2011-11-08 10:36:11发表:

    (e:e2s 有用,谢谢

  10. sourcehappy 于 2011-11-04 19:18:18发表:

    good

  11. linuxunil 于 2011-11-03 22:05:44发表:

    {:2_92:}

  12. zhongyue 于 2011-11-03 13:37:42发表:

    不错,留用

  13. t19892009 于 2011-11-02 16:51:48发表:

    非常详细,不错

  14. lidan125125 于 2011-11-02 01:00:01发表:

    顶起

  15. lidan125125 于 2011-11-02 00:59:53发表:

    顶起

  16. lidan125125 于 2011-11-02 00:59:40发表:

    好啊

  17. lidan125125 于 2011-11-02 00:59:33发表:

    好啊

  18. lidan125125 于 2011-11-02 00:58:55发表:

    好贴

  19. lidan125125 于 2011-11-02 00:58:49发表:

    好贴

  20. tangrm 于 2011-11-01 17:42:47发表:

    不太懂

  21. 学者 于 2011-10-17 17:34:46发表:

    感谢楼主,帖子已收藏0:w(5(

  22. lanlanlangzi 于 2011-10-17 17:21:29发表:

    非常好
    :0w223dc

  23. guoxin001984 于 2011-10-17 15:29:33发表:

    …………

  24. zhynpng 于 2011-10-15 23:44:21发表:

    感谢分享

  25. wzl19890425 于 2011-10-13 23:06:40发表:

    学习了

  26. wzl19890425 于 2011-10-13 23:04:14发表:

    学习了 谢谢

  27. keep_trying 于 2011-10-08 21:55:53发表:

    好倒是好不过一点也不懂啊 诶 好好学吧

  28. okouver 于 2011-09-25 22:48:23发表:

    我是Linux新手,来学习的~

  29. naxe 于 2011-09-18 10:52:12发表:

    ding

  30. zhanlangx0 于 2011-09-17 10:02:07发表:

    虽然是debian的操作方式,不过原理都还是一样的。

  31. akzi 于 2011-09-14 17:38:28发表:

    谢谢了

  32. whw_86 于 2011-09-14 12:33:51发表:

    学习下。。。。。

  33. 张希望 于 2011-09-13 17:00:58发表:

    会哈哈哈哈

  34. 张希望 于 2011-09-13 17:00:53发表:

    好好好

  35. 张希望 于 2011-09-13 17:00:47发表:

  36. 张希望 于 2011-09-13 17:00:42发表:

    规划

  37. 张希望 于 2011-09-13 17:00:38发表:

    很好

  38. 张希望 于 2011-09-13 17:00:34发表:

    ghh

  39. 张希望 于 2011-09-13 17:00:33发表:

    ghh

  40. 张希望 于 2011-09-13 17:00:28发表:

    共同