22921a859f
Fix "new sentence, new line" warnings throughout so that formatters can produce correct spacing between sentences. join.1 Remove unnecessary Ns macros. These are not necessary for delimeters, which get special treatment. xinstall.1 Fix date in manual. The contents were last modified on 2016-12-03, so use that instead of the invalid date. grep.1 Fix escape sequence for `\<` and `\>`. ed.1 Remove spurious `\\n` escape for the null-command.
145 lines
3.4 KiB
Groff
145 lines
3.4 KiB
Groff
.Dd 2015-10-08
|
|
.Dt FIND 1
|
|
.Os sbase
|
|
.Sh NAME
|
|
.Nm find
|
|
.Nd find files
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl H | L
|
|
.Ar path Op ...
|
|
.Op Ar expression
|
|
.Sh DESCRIPTION
|
|
.Nm
|
|
walks a file hierarchy starting at each
|
|
.Ar path
|
|
and applies the
|
|
.Ar expression
|
|
to each file encountered.
|
|
.Sh OPTIONS
|
|
.Bl -tag -width Ds
|
|
.It Fl H
|
|
Dereference symbolic links provided as
|
|
.Ar path .
|
|
.It Fl L
|
|
Dereference all symbolic links encountered.
|
|
.El
|
|
.Sh EXTENDED DESCRIPTION
|
|
.Ar expression
|
|
is a combination of the following primaries and boolean operators.
|
|
In the following descriptions the number n can be replaced by +n, n, or
|
|
-n, to mean more than, exactly, or less than n respectively.
|
|
.Ss Primaries
|
|
.Bl -tag -width Ds
|
|
.It Fl name Ar pattern
|
|
True if the name of the file matches the given pattern.
|
|
.It Fl path Ar pattern
|
|
True if the path to the file matches the given pattern.
|
|
.It Fl nouser
|
|
True if the file belongs to a user for which getpwuid() returns NULL.
|
|
.It Fl nogroup
|
|
True if the file belongs to a group for which getgrgid() returns NULL.
|
|
.It Fl xdev
|
|
True.
|
|
Do not enter directory on a different device.
|
|
.It Fl prune
|
|
True.
|
|
Do not enter directory.
|
|
.It Fl perm Ar mode
|
|
True if permissions on the file match mode.
|
|
Mode is a symbolic mode as used in chmod.
|
|
A leading '-' in mode checks that at least all bits in mode are set in
|
|
permissions for file.
|
|
Without the leading '-' the permissions for file must exactly match
|
|
mode.
|
|
.It Fl type Ar t
|
|
True if file is of type specified by
|
|
.Ar t .
|
|
.Bl -tag -width Ds
|
|
.It Ar b
|
|
block special
|
|
.It Ar c
|
|
character special
|
|
.It Ar d
|
|
directory
|
|
.It Ar l
|
|
symbolic link
|
|
.It Ar p
|
|
FIFO
|
|
.It Ar f
|
|
regular file
|
|
.It Ar s
|
|
socket
|
|
.El
|
|
.It Fl links Ar n
|
|
True if file has
|
|
.Ar n
|
|
links.
|
|
.It Fl user Ar name
|
|
True if file belongs to user
|
|
.Ar name .
|
|
.It Fl group Ar name
|
|
True if file belongs to group
|
|
.Ar name .
|
|
.It Fl size Ar n[c]
|
|
True if file size in 512 byte sectors (rounded up), or bytes (if
|
|
.Ar c
|
|
is given), is
|
|
.Ar n .
|
|
.It Fl atime n
|
|
True if file access time is
|
|
.Ar n
|
|
days.
|
|
.It Fl ctime
|
|
True if file status change time is
|
|
.Ar n
|
|
days.
|
|
.It Fl mtime
|
|
True if file modified time is
|
|
.Ar n
|
|
days.
|
|
.It Fl exec Ar cmd [arg ...] \&;
|
|
Execute cmd with given arguments, replacing each {} in argument list
|
|
with the current file.
|
|
True if cmd exits with status 0.
|
|
.It Fl exec Ar cmd [arg ...] {} +
|
|
True.
|
|
Add as many files as possible to argument list and execute when the list
|
|
is full or all files have been found.
|
|
.It Fl ok Ar cmd [arg ...] \&;
|
|
Prompt the user on each file encountered whether or not to execute cmd
|
|
as with -exec.
|
|
True if the user responds yes and cmd exits with status 0, false
|
|
otherwise.
|
|
.It Fl print
|
|
True.
|
|
Print the path to the current file.
|
|
.It Fl newer Ar file
|
|
True if the modification time of the current file is newer than that of
|
|
the provided file.
|
|
.It Fl depth
|
|
True.
|
|
Causes find to evaluate files within in a directory before the directory
|
|
itself.
|
|
.El
|
|
.Ss Operators
|
|
In order of decreasing precedence
|
|
.Bl -tag -width Ds
|
|
.It Ar \&( expression \&)
|
|
True if expression is true.
|
|
.It Ar \&! expression
|
|
True if expression if false.
|
|
.It Ar expression [ Fl a ] Ar expression
|
|
True if both expressions are true.
|
|
Second expression is not evaluated if first expression is false.
|
|
.Fl a
|
|
is implied if there is no operator between primaries.
|
|
.It Ar expression Fl o Ar expression
|
|
True if either expression is true.
|
|
Second expression is not evaluated if first expression is true.
|
|
.El
|
|
.Pp
|
|
If no expression is supplied, -print is used.
|
|
If an expression is supplied but none of -print, -exec, or -ok is
|
|
supplied, then -a -print is appended to the expressions.
|