体育资讯网

您现在的位置是:首页 > 分类10 > 正文

分类10

获取linux命令源码(Linux的源代码)

hacker2022-06-11 17:22:24分类1041
本文目录一览:1、如何查看各种Linux命令的源码

本文目录一览:

如何查看各种Linux命令的源码

用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表示版本号 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 tar zxvf coreutils-XXX.tar.gzOK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了。关于更多Linux的学习,请查阅书籍《linux就该这么学》。

如何获取linux下命令源码

首先在linux命令行中新建一个目录 mkdir github(名字可以按你项目名定义),之后敲git命令,确认git工具已经安装好了,我使用的是Ubuntu14.04,git工具默认安装好了。若没有安装,可以尝试自行安装,安装方法比较简单。如下图所示

2

在github查看你所需要使用下载源码项目的URL地址,比如我下载的openwrt,在github中搜索该项目,可以查看到相关的URL地址: 复制下该地址,后面需要使用。如下图所示

3

在linux命令行中使用 git clone 命令,对该项目源码clone到本地,等待clone完成。如下图所示(该项目较大,网络不快,还未clone完成,只做参考)

如何查看Linux命令源代码

以find命令为例获取linux命令源码

第一步获取linux命令源码,确定命令属于哪个rpm包:

#rpm -qf /usr/bin/find

findutils-4.1-34

第二步,查找findutils的源码包findutils-4.1-34.src.rpm,这个一般在发行版的网站上可以找到(比如FC6的源码在这里可以找到:)。

也可以到rpmfind.net上查找,输入rpm包的名字就可以找到相关的源码包,有的也可以得到软件对应的网站。

第三步,安装源码包:

rpm -ivh findutils-4.1-34.src.rpm

安装好之后可以到/usr/src/RedHat/SOURCE下找到相关的源码包

或者直接编译源码包:

rpmbuild -bb findutils-4.1-34.src.rpm

请问linux下的系统命令是不是开源的? 比如sort,awk等等,如果是的话,在哪可以找到源代码?

Linux是开源的,它自带的功能强大的命令也是开源的,也就是说,我们可以获得这些命令的源代码并研究它。那究竟如何获得系统的命令的源代码呢?

命令的源代码是一个软件包为单元的,放在一个软件包的源代码中,若要下载一个命令的源代码,就要把这个命令所属的软件包的源代码都下载下来。命令的源代码就在下载的源代码的相关目录内,通常是src目录,相应的主文件名为cmd.c,其中cmd为具体的命令,如ls命令的主程序文件为ls.c。可查阅“Linux命令大全”了解Linux命令。

linux命令的源代码怎么获取

1)在使用dpkg时,若出现错误,可以使用sudo命令使其以root权限执行。

2)使用apt-get source下载的源代码保存到当前目录下。。此外,当我们知道了命令所属的包后,也可以到相应的官方网站下载。

2、CentOS中系统命令源代码的获取方法

以32位CentOS6.6下,获取ls命令的源代码为例,可以使用如下的方法下载源代码:

1)配置源代码的源

在CentOS中,源的配置文件为:/etc/yum.repos.d/CentOS-Base.repo,修改该文件需要root权限。

如何获得Linux命令的源代码

1. 以搜索ls命令源码为例,先搜索命令所在包,命令如下: lpj@lpj-linux:~$ which ls /bin/ls 2. 用命令搜索该软件所在包,代码如下: lpj@lpj-linux:~$ dpkg -S /bin/ls coreutils: /bin/ls 3. 从上一步中可以知道ls命令的实现在包coreutils中...

发表评论

评论列表

  • 闹旅秙暔(2022-06-12 01:36:32)回复取消回复

    令所属的软件包的源代码都下载下来。命令的源代码就在下载的源代码的相关目录内,通常是src目录,相应的主文件名为cmd.c,其中cmd为具体的命令,如ls命令的主程序

  • 晴枙桃靥(2022-06-12 01:31:44)回复取消回复

    in/ls coreutils: /bin/ls 3. 从上一步中可以知道ls命令的实现在包coreutils中...

  • 可难谜兔(2022-06-11 19:13:20)回复取消回复

    版本号 sudo tar zxvf coreutils-XXX.tar.gz 或者只下载源码,然后手动打补丁再解压,代码如下:sudo apt-get -d source coreutils cd /

  • 辞眸揽月(2022-06-11 21:54:27)回复取消回复

    ce coreutils cd /usr/src/coreutils-XXX #XXX表示版本号 sudo tar zxvf coreutils-XXX.tar.gz 或者只下载源码

  • 澄萌雾敛(2022-06-11 18:04:50)回复取消回复

    oreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了。关于更多Linux的学习,请查阅书籍《linux就该这么学》。如何获取linux下命令源码首先在linux命令行中新建一个目录 mkdir