- ベストアンサー
whereisコマンドについて教えてください。
whereisコマンドでソースやマニュアルファイルの場所がわかると思うのですが疑問がわきました。 [root@localhost ~]# whereis ls ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz まずソースがls:となっているのですが、これはどこの場所を指しているのでしょうか? またマニュアルはみんな.gzファイルで用意されているのでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>/bin/lsはバイナリファイルのように思うのですがソースファイルはどこにあるのでしょうか? こんばんは。 最近のほとんどのLinuxは、ソースもパッケージから入手できます。 たとえば、FedoraCoreの場合ですけど、 (1) まず、rpmコマンドを使うと、/bin/lsコマンドが、coreutilsパッケージに含まれている 事がわかります。 # rpm -qif /bin/ls Name : coreutils Relocations: (not relocatable) Version : 5.97 Vendor: Red Hat, Inc. Release : 1.1 Build Date: 2006年07月13日 19時09分48秒 (2) FedoraCoreのミラーサイトから、coreutilsソースパッケージをダウンロードする。 http://ftp.kddilabs.jp/Linux/packages/fedora/core/5/source/SRPMS/coreutils-5.93-7.2.src.rpm (3) coreutilsソースパッケージをインストールする # rpm -ivh coreutils-5.93-7.2.src.rpm (4) coreutilsソースの固まりが、bz2形式でインストールされます。 /usr/src/redhat/SOURCES/coreutils-5.93.tar.bz2 (5) ソースの固まりを、tarコマンドで解凍します。 # tar xvjf coreutils-5.93.tar.bz2 (6) coreutilsのディレクトリが作られて、その中に、lsコマンドのソースができました。 coreutils-5.93/src/ls.c coreutils-5.93/src/ls.h あなたが使っているLinuxに合わせて、試してみてください。
その他の回答 (3)
- saaya_holic
- ベストアンサー率23% (46/195)
ご質問の表示例では実行ファイルが/bin/ls、 後方の2つがマニュアルでソースはありませんね。 ソースのみを探す場合は whereis -s
- a-saitoh
- ベストアンサー率30% (524/1722)
ソースはないか、あるいはwhereisコマンドが知っている置き場所候補ではない違う場所に置かれているかどちらかでしょう。 まず、そもそもそのlinuxにはソースは入っているのですか?たいていのディストリビューションではソースはインストールとは別作業で入れないかぎり、入らないと思いますが。
お礼
なるほど。ソースは別でインストールしないといけないのですね。ありがとうございました。^^
- FoggyMountain
- ベストアンサー率21% (79/372)
>これはどこの場所を指しているのでしょうか? /bin/ls
お礼
ありがとうございます。^^ [root@localhost logrotate.d]# whereis -s ls ls: [root@localhost logrotate.d]# whereis -b ls ls: /bin/ls /bin/lsはバイナリファイルのように思うのですがソースファイルはどこにあるのでしょうか?
お礼
ありがとうございます。^^ なるほど。ソースファイルはインストールしないと ないのですね。ありがとうございました。