Linux locateコマンド
Linux locateコマンドは条件に一致するドキュメントを検索するために使用され、ドキュメントとディレクトリ名を保存するデータベース内で、テンプレートパターンの条件に一致するドキュメントまたはディレクトリを検索します。
通常は次のように入力するだけでlocate your_file_name指定したファイルを検索できます。
構文
locate [-d ][--help][--version][范本样式...]
パラメータ:
- -b, --basename -- パス名のベース名のみをマッチングする
- -c, --count -- 見つかった数のみを出力する
- -d, --database DBPATH -- デフォルトのデータベース /var/lib/mlocate/mlocate.db ではなく、DBPATH で指定されたデータベースを使用する
- -e, --existing -- 現在存在するファイルのエントリのみを出力する
- -1 -- もし 1 ならば、セキュリティモードを起動します。セキュリティモードでは、ユーザーは権限がないために見ることができないファイルを見ることはできません。locate は実際のファイルシステムからファイルの権限情報を取得する必要があるため、速度が遅くなります。
- -0, --null -- 出力ではNULでエントリを区切る
- -S, --statistics -- エントリを検索せず、各データベースに関する統計情報を出力する
- -q -- 静音モード。エラーメッセージは一切表示されません。
- -P, --nofollow, -H -- ファイルの存在を確認する際に、末尾のシンボリックリンクを辿らない
- -l, --limit, -n LIMIT -- 出力(またはカウント)をLIMIT個のエントリに制限する
- -n -- 最大 n 個の出力を表示する。
- -m, --mmap -- 後方互換性のために無視される
- -r, --regexp REGEXP -- 基本正規表現を使用する
- --regex -- 拡張正規表現を使用する
- -q, --quiet -- 静音モード。エラーメッセージは一切表示されません
- -s, --stdio -- 後方互換性のために無視される
- -o -- データベースの名前を指定します。
- -h, --help -- ヘルプを表示する
- -i, --ignore-case -- 大文字と小文字を区別しない
- -V, --version -- バージョン情報を表示する
例
passwd ファイルを検索するには、次のコマンドを入力します:
locate passwd
etc ディレクトリ内の sh で始まるすべてのファイルを検索します:
locate /etc/sh
大文字と小文字を区別せずに、現在のユーザーディレクトリ内の r で始まるすべてのファイルを検索します:
locate -i ~/r
補足説明
locate は find とは異なります。find はハードディスクを探しますが、locate は /var/lib/slocate データベース内のみを探します。
locate は find より速く、実際に検索するのではなくデータベースを検索します。通常、ファイルデータベースは /var/lib/slocate/slocate.db にあります。そのため locate の検索はリアルタイムではなく、データベースの更新時点のものです。通常はシステムが自動的に管理しますが、手動でデータベースを更新することもできます。コマンドは次のとおりです:
updatedb
デフォルトでは updatedb は毎日1回実行されます。
その他の拡張
Linuxコマンド大全