説明
whereis は指定したファイルのソース・バイナリ・man ページセクションの場所を示す。 与えられた名前は、最初に始めのパス名の部分が取り除かれ、次に .c のような .ext という形式の拡張子が取り除かれる。 ソースコード管理に使われている s. というプレフィックスがついたファイルも表示される。 whereis は、標準的な Linux ファイル階層中で指定したプログラムを探す。オプション
- -b
- バイナリのみを探す。
- -m
- man ページセクションのみを探す。
- -s
- ソースのみを探す。
- -u
- 通常とは異なるエントリを探す。 要求されるタイプの 1 つのエントリがファイルにない場合、 通常とは異なるファイルと呼ばれる。 よって、 `whereis -m -u *' は、カレントディレクトリのファイルから man ページがないものを探す。
- -B
- whereis がバイナリを探すディレクトリを変更または制限する。
- -M
- whereis が man ページセクションを探すディレクトリを変更または制限する。
- -S
- whereis がソースを探すディレクトリを変更または制限する。
- -f
- 直前のディレクトリリストを終了させ、 ファイル名指定の開始であることを示す。 -B, -M, -S オプションのいずれかを使う場合は、 このオプションを 使わなければならない。
例
/usr/bin にあるファイルから /usr/man/man1 に man ページがなく /usr/src にソースがあるようなもの探す。-
example% cd /usr/bin example% whereis -u -M /usr/man/man1 -S /usr/src -f *
ファイル
- /{bin,sbin,etc}
- /usr/{lib,bin,old,new,local,games,include,etc,src,man,sbin,
- X386,TeX,g++-include}
- /usr/local/{X386,TeX,X11,include,lib,man,etc,bin,games,emacs}
バグ
whereis は実行を速くするために chdir(2V) を使うので、 -M, -S, -B に指定するパス名はフルパスでなければならない; つまりパス名は `/' で始まっていなければならない。whereis はハードコードされたパスを持っているので、 探しているものとは違うものが見つかるかもしれない。