如何查看linux命令原始碼

來源:互聯網
上載者:User

用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中查看各命令對應的原始碼了

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.