Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
locate(1)		     General Commands Manual		       locate(1)

NAME
     plocate - find files by name, quickly

SYNOPSIS
     plocate [OPTION]...  PATTERN...

DESCRIPTION
     plocate finds all files on the system matching the given pattern (or all of
     the patterns if multiple are given). It does this by means of an index made
     by  updatedb(8)  or  (less  commonly)  converted from another index by plo-
     cate-build(8).

     plocate is largely argument-compatible with  mlocate(1),  but  is	signifi-
     cantly  faster.  In  particular, it rarely needs to scan through its entire
     database, unless the pattern is very short (less than three bytes)  or  you
     want  to  search for a regular expression. It does not try to maintain com-
     patibility with BSD locate, or non-UTF-8 filenames and locales. Most I/O is
     done asynchronously, but the results are synchronized so that output  comes
     in the same order every time.

     When  multiple patterns are given, plocate will search for files that match
     all of them. This	is  the  main  incompatibility	with  mlocate(1),  which
     searches for files that match one or more patterns, unless the -A option is
     given.

     By default, patterns are taken to be substrings to search for.  If at least
     one  non-escaped globbing metacharacter (*, ? or []) is given, that pattern
     is instead taken to be a glob pattern (which means it needs  to  start  and
     end in * for a substring match). If --regexp is given, patterns are instead
     taken  to be (non-anchored) POSIX basic regular expressions, and if --regex
     is given, patterns are taken to be POSIX extended regular expressions.  All
     of this matches mlocate(1) behavior.

     Like mlocate(1), plocate shows all files visible to the  calling  user  (by
     virtue  of  having read and execute permissions on all parent directories),
     and none that are not, by means of running with the setgid bit set  to  ac-
     cess  the	index (which is built as root), but by testing visibility as the
     calling user.

EXIT STATUS
     plocate exits with 0 to indicate that a match was found or that  --help  or
     --version	were  passed. Otherwise, plocate exits with status code 1, indi-
     cating that an error occurred or that no matches were found.

OPTIONS
     -A, --all
	    Ignored for compatibility with mlocate(1).

     -b, --basename
	    Match only against the file name portion of the path name, ie.,  the
	    directory names will be excluded from the match (but still printed).
	    This  does	not  speed up the search, but can suppress uninteresting
	    matches.

     -c, --count
	    Do not print each match. Instead, count them, and print out a  total
	    number at the end.

     -d, --database DBPATH
	    Find matches in the given database, instead of /var/lib/plocate/plo-
	    cate.db.   This argument can be given multiple times, to search mul-
	    tiple databases.  It is also possible to give multiple databases  in
	    one  argument,  separated  by :.  (Any character, including : and \,
	    can be escaped by prepending a \.)

     -e, --existing
	    Print only entries that refer to files existing at the  time  locate
	    is	run.  Note  that unlike mlocate(1), symlinks are not followed by
	    default (and indeed, there is no option to change this).

     -i, --ignore-case
	    Do a case-insensitive match as given by the current locale	(default
	    is	case-sensitive,  byte-by-byte match). Note that plocate does not
	    support the full range of Unicode case folding rules; in particular,
	    searching for ~A will not give you matches on ss even in a German lo-
	    cale. Also note that this option will  be  somewhat  slower  than  a
	    case-sensitive match, since it needs to generate more candidates for
	    searching the index.

     -l, --limit LIMIT
	    Stop  searching  after  LIMIT matches have been found. If --count is
	    given, the number printed out will be at most LIMIT.

     -N, --literal
	    Print entry names without quoting.	Normally,  plocate  will  escape
	    special  characters in filenames, so that they are safe for consump-
	    tion by typical shells  (similar  to  the  GNU  coreutils  shell-es-
	    cape-always  quoting style), unless printing to a pipe, but this op-
	    tions will turn off such quoting.

     -0, --null
	    Instead of writing a newline after every match, write a  NUL  (ASCII
	    0).  This is useful for creating unambiguous output when it is to be
	    processed by other tools (like xargs(1)), as filenames  are  allowed
	    to contain embedded newlines.

     -r, --regexp
	    Patterns  are  taken  to  be  POSIX  basic regular expressions.  See
	    regex(7) for more information. Note that this forces a  linear  scan
	    through the entire database, which is slow.

     --regex
	    Like  --regexp,  but patterns are instead taken to be POSIX extended
	    regular expressions.

     -w, --wholename
	    Match against the entire path name. This is the default,  so  unless
	    -b	is given first (see above), it will not do anything. This option
	    thus exists only as compatibility with mlocate(1).

     --help
	    Print out usage information, then exit successfully.

     --version
	    Print out version information, then exit successfully.

ENVIRONMENT
     LOCATE_PATH
	    If given, appended after the list of --database  paths  (whether  an
	    explicit  is  given  or  the default is used).  Colon-delimiting and
	    character escaping follows the same rules as for --database.

AUTHOR
     Steinar H. Gunderson <steinar+plocate@gunderson.no>

SEE ALSO
     plocate-build(8), mlocate(1), updatedb(8)

plocate 			    Oct 2020			       locate(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=plocate&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help