wivern ロゴ

サイバーセキュリティ研究所

サイバーセキュリティを中心に、軍事、防犯、サーバーの管理と監視、その他、最新技術を研究しています。


Linux コマンド辞典「locate」

locate : ファイル名データベースからパターンに合うものを表示する

command: locate

前回前々回に引き続き、Linux のファイル検索系のコマンドとして、最終回は locate を man の内容から紹介します。
locate の特徴としては、あらかじめ作成したデータベースを使って検索するために、find コマンドよりも高速に検索が行えるという点ですが、事前にデータベースにファイル情報を登録するために、スーパーユーザー権限で updatedb コマンドを実行する必要があります。


名前
locate - ファイル名データベースからパターンに合うものを表示する

書式
locate [-d path] [--database=path] [--version] [--help] pattern...

説明
このマニュアルページは GNU 版 locate の使い方を説明したものである。
locate は与えられたパターンそれぞれに対して、一つまたは複数のファイル名データベースを検索し、パターンを含むファイル名を表示する。
パターンにはシェルで用いるメタキャラクタ ( '*', '?' 及び '[]' ) を用いることができる。
メタキャラクタは '/ ' や '.' を特別扱いしない。
従って 'foo*bar' というパターンは 'foo3/bar' というファイル名にマッチするし、'*duck*' というパターンは 'lake/.ducky' にマッチする。
メタキャラクタを含んだパターンは、シェルによって展開されないように引用符で囲む必要がある。

パターンが — メタキャラクタを含まない — 通常の文字列である場合には 、locate はその文字列を(部分的にでも、またどんな位置にでも)含むファイル名をすべて表示する。
もしパターンがメタキャラクタを含む場合には、locate はパターンに正確に合うファイル名のみを表示する。
従って、通常メタキャラクタを含むパターンには、最初と最後に '*' をつけておくと良い。
ただしファイル名の先頭または最後に意識的にマッチさせたい場合はこの限りではない。

ファイル名データベースは、最後に更新された時点において、システムに存在していたファイルのリストからなっている。
システム管理者はデフォルトで用いるデータベースのファイル名や更新の頻度、またどのディレクトリの情報をデータベースに入れるかなどを選択することができる。
updatedb(1L) を見よ。

オプション
-d path, --database=path
デフォルトのファイル名データベースの代わりに、path にあるものを探す。
path はデータベースファイル名のリスト(コロン区切り)である。
検索するデータベースファイルのリストを指定するには、環境変数 LOCATE_PATH を利用することもできる。
このオプションと環境変数が両方とも指定された場合には、オプションの方が優先される。

ファイル名データベースのフォーマットは GNU 版 find 及び locate のバージョン 4.0 から変更された。
この変更によって、バイトオーダーの異なるマシンの間でデータベースを共有することが可能になった。
この版の locate は、古い版の GNU locate や Unix 版 locate 及び find 向けに作成されたデータベースを自動的に認識できる。

--help
locate のオプションに対する短い説明を表示して終了する。

--version
locate のバージョンを表示して終了する。

環境変数
LOCATE_PATH
コロンによって区切られた検索するデータベースのリスト。

関連項目
find(1L), locatedb(5L), updatedb(1L), xargs(1L)

記述に際しては、細心の注意をしたつもりですが、間違いやご指摘がありましたら、こちらからお知らせいただけると幸いです。


←「Linux コマンド辞典「time」」
←「Linux コマンド辞典「which」」


« 戻る