locate

提供: ArchWiki
2023年4月5日 (水) 16:35時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (テンプレート:Expansion を削除)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

関連記事

locate は、名前でファイルを素早く見つける一般的な Unix ツールです。ファイルシステムを直接検索するのではなく、事前に構築したデータベースファイルを検索することにより高速な検索を提供します。この方法の欠点は、データベースが作成された後に加えられた変更を locate が検出できないということです。データベースを定期的に更新することにより、この問題を軽減できます。

mlocate (Merging Locate) は、locate ユーティリティのより安全なバージョンです。現在のユーザによってアクセス可能なファイルのみを表示します。

plocate (Posting Locate) は、転置インデックスに基づく locate です。mlocate のデータベースを先読みして、より速い(そしてより小さい)インデックスを作成します。

インストール

mlocateplocate パッケージをインストールしてください。

GNU findutils にも locate の実装がありますが、Arch の findutils にはありません。

使用法

locate(1) を使う前に、データベースを作成する必要があります。これは、データベースをアップデートする updatedb(8) コマンドで行います。

mlocate には updatedb.timer ユニットがあり、plocate には plocate-updatedb.timer ユニットがあります。 これらのユニットは、毎日1回データベースをアップデートします。mlocate はインストール時にこのタイマーを有効化します。再起動せずにタイマーを使いたい場合は手動で起動してください。updatedb を root として実行することでいつでもデータベースをアップデートできます。

検索時間を削減するために、/etc/updatedb.conf を編集して特定のファイルシステムとパスを無視するように updatedb を設定できます。updatedb.conf(5) でこのファイルの構文が説明されています。デフォルト設定ファイルの除外パス(PRUNEPATHS)には /media/mnt が含まれているので、locate は外部デバイス上のファイルを発見できないでしょう。

参照