ホームページ  >  記事  >  運用・保守  >  ロケートコマンドとは何ですか?

ロケートコマンドとは何ですか?

coldplay.xixi
coldplay.xixiオリジナル
2020-11-02 14:46:1418869ブラウズ

locate コマンドは、ファイルまたはディレクトリの検索に使用されます。locate コマンドは、特定のディレクトリではなくデータベースを検索するため、[find -name] よりもはるかに高速です。構文は [locate [OPTION] ...[パターン]...]。

ロケートコマンドとは何ですか?

locate コマンド:

1. コマンドの概要

locate コマンド(locate) コマンドは、ファイルまたはディレクトリを検索するために使用されます。 locate コマンドは、特定のディレクトリではなくデータベース /var/lib/mlocate/mlocate.db を検索するため、find -name よりもはるかに高速です。このデータベースには、すべてのローカル ファイルに関する情報が含まれています。 Linux システムでは、このデータベースが自動的に作成され、1 日に 1 回自動的に更新されるため、whereis やlocate を使用してファイルを検索すると、削除されたデータが見つかったり、作成されたばかりのファイルが見つからなかったりすることがあります。理由は、データベース ファイルが更新されていないためです。この状況を回避するには、locate を使用する前に updatedb コマンドを使用してデータベースを手動で更新します。検索作業全体は、実際には 4 つの部分で構成されます:

  • /usr/bin/updatedb 主にデータベースの更新に使用され、crontab

  • # によって自動的に完了します。 ##/usr/bin/locate クエリ ファイルの場所

  • #/etc/updatedb.conf updatedb 設定ファイル
  • ##/var/lib/ mlocate /mlocate.db ファイル情報を保存するファイル
  • 2.使用法

locate [OPTION]... [PATTERN]...
3.オプション

  -b, --basename         match only the base name of path names
  -c, --count            只输出找到的数量
  -d, --database DBPATH  使用DBPATH指定的数据库,而不是默认数据库 /var/lib/mlocate/mlocate.db
  -e, --existing         only print entries for currently existing files
  -L, --follow           follow trailing symbolic links when checking file existence (default)
  -h, --help             显示帮助
  -i, --ignore-case      忽略大小写
  -l, --limit, -n LIMIT  limit output (or counting) to LIMIT entries
  -m, --mmap             ignored, for backward compatibility
  -P, --nofollow, -H     don't follow trailing symbolic links when checking file existence
  -0, --null             separate entries with NUL on output
  -S, --statistics       don't search for entries, print statistics about eachused database
  -q, --quiet            安静模式,不会显示任何错误讯息
  -r, --regexp REGEXP    使用基本正则表达式
      --regex            使用扩展正则表达式
  -s, --stdio            ignored, for backward compatibility
  -V, --version          显示版本信息
  -w, --wholename        match whole path name (default)
4. 例

例 1: etc ディレクトリで始まるすべてのファイルを検索

[root@cent6 lib]# locate /etc/my
/etc/my.cnf

例 2: 新しく追加されたファイルが見つからない場合は、updateb を使用してください

[root@cent6 ~]# touch new.txt
[root@cent6 ~]# locate new.txt
[root@cent6 ~]# updatedb
[root@cent6 ~]# locate new.txt
/root/new.txt

例 3: updatedb の設定ファイル/etc/updatedb.conf

[root@cent6 ~]# cat /etc/updatedb.conf 
PRUNE_BIND_MOUNTS = "yes"
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs"
PRUNENAMES = ".git .hg .svn"
PRUNEPATHS = "/afs /media /net /sfs /tmp /udev /var/cache/ccache /var/spool/cups /var/spool/squid /var/tmp"

関連学習の推奨事項:

Linux ビデオ チュートリアル

以上がロケートコマンドとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。