linuxコマンドソースコードの表示方法(ネットワークから転送)

1019 ワード

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.gz
  • OK、これらのステップが完了すると、/usr/src/coreutils-XX/coreutils-XX/srcに各コマンドに対応するソースコードを表示できます