FIND(1) General Commands Manual FIND(1)NAME
find - find files
SYNOPSIS
find pathname-list expression
DESCRIPTION
Find recursively descends the directory hierarchy for each pathname in the pathname-list (i.e., one or more pathnames) seeking files that
match a boolean expression written in the primaries given below. In the descriptions, the argument n is used as a decimal integer where +n
means more than n, -n means less than n and n means exactly n.
-name filename
True if the filename argument matches the current file name. Normal Shell argument syntax may be used if escaped (watch out for
`[', `?' and `*').
-perm onum
True if the file permission flags exactly match the octal number onum (see chmod(1)). If onum is prefixed by a minus sign, more
flag bits (017777, see stat(2)) become significant and the flags are compared: (flags&onum)==onum.
-type c True if the type of the file is c, where c is b, c, d or f for block special file, character special file, directory or plain
file.
-links n True if the file has n links.
-user uname
True if the file belongs to the user uname (login name or numeric user ID).
-group gname
True if the file belongs to group gname (group name or numeric group ID).
-size n True if the file is n blocks long (512 bytes per block).
-inum n True if the file has inode number n.
-atime n True if the file has been accessed in n days.
-mtime n True if the file has been modified in n days.
-exec command
True if the executed command returns a zero value as exit status. The end of the command must be punctuated by an escaped semi-
colon. A command argument `{}' is replaced by the current pathname.
-ok command
Like -exec except that the generated command is written on the standard output, then the standard input is read and the command
executed only upon response y.
-print Always true; causes the current pathname to be printed.
-newer file
True if the current file has been modified more recently than the argument file.
The primaries may be combined using the following operators (in order of decreasing precedence):
1) A parenthesized group of primaries and operators (parentheses are special to the Shell and must be escaped).
2) The negation of a primary (`!' is the unary not operator).
3) Concatenation of primaries (the and operation is implied by the juxtaposition of two primaries).
4) Alternation of primaries (`-o' is the or operator).
EXAMPLE
To remove all files named `a.out' or `*.o' that have not been accessed for a week:
find / ( -name a.out -o -name '*.o' ) -atime +7 -exec rm {} ;
FILES
/etc/passwd
/etc/group
SEE ALSO sh(1), test(1), filsys(5)BUGS
The syntax is painful.
FIND(1)
Check Out this Related Man Page
vfind(1) ShapeTools vfind(1)NAME
vfind - find attributed software objects (ASOs)
SYNOPSIS
vfind [ options ] pathname-list expression
DESCRIPTION
Vfind recursively descends the directory hierarchy for each pathname in the pathname-list seeking asos that match a boolean expression
written in the primaries given below. In the description, the argument n is used as a decimal integer where +n means more than n, -n means
less than n and n means exactly n.
OPTIONS -version
print version information about the vfind program itself. No other action given will be performed.
-?, -help
print brief instructions about using vfind.
-cache match a boolean expression also for aso residing in the derived object cache.
-cut nesting depth
causes vfind to descend the filesystem hierarchy down to nesting depth nesting depth.
-force Vfind normally ignores saved asos iff a AtFS directory is a symbolic link. If the -force option is given vfind takes also symbolic
AtFS directories into consideration.
-hits causes vfind to return the number of expressions yielding true during evaluation.
-xdev causes vfind not to traverse down into a file system different from the one on which current argument pathname resides.
PRIMARIES -atime n
True if the aso has been accessed in n days.
-ctime n
True if status of the aso has been changed in n days.
-mtime n
True if the aso has been modified in n days.
-stime n
True if the aso has been saved in n days.
-ltime n
True if the aso has been locked in n days.
-exec command
True if the executed command returns a zero value as exit status. The end of the command must be punctated by an ecscaped semicolon.
A command argument `{}' is replaced by the system name of the current aso.
-exit n
Terminates vfind and returns n as the exit status.
-vl Always true; causes the current aso to be printed together with its associated statistics. This includes protection mode, AtFS ver-
sion state, user, host, size in bytes, modification time respectively saving time. The format is identical to that of ``vl -l''.
-name name
True if the name argument matches the filename component of the current aso. Normal Shell argument syntax may be used if escaped.
-perm onum
True if the aso permission flags exactly match the octal numer onum. If onum is prefixed by a minus sign, more flag bits (017777)
become significant and the flags are compared: (flags&onum)==onum.
-print Always true; causes the relative path of the current aso to be printed.
-prune Always true; has the side effect of pruning the tree, iff the current file is a directory.
-SinceName name
True if the current aso is older than the corresponding aso having the symbolic name name.
-symbolic name
True if the current aso has the symbolic name name. See vadm(1) or save(1) on how to attach a symbolic name to an aso.
-state state
True if the state of the current aso matches state state, where state is busy, save, proposed, published, accessed, or frozen.
-type c
True if the type of the current aso is c, where c is b, c, d, f, l, or s for block special file, character special file, directory,
plain file, symbolic link, or socket.
-uda uda
True if the current aso has an user defined attribute matching uda uda, where uda is of the form name[=value].
-user user
True if the current aso belongs to user user, where user is a login name optinally followed by a domainname (e.g. uli@cs.tu-
berlin.de).
-last True if the current aso is the last version of the development line.
-first True if the current aso is the first version of the development line.
-locked
True if the current aso is locked.
-locker user
True if the current aso is locked by user user, where user is a login name optionally followed by a domainname.
-eq vnum
True if the version number of the current aso matches version number vnum, where vnum is generation.revision.
-lt vnum
True if the version number of the current aso is less than the version number vnum.
-le vnum
True if the version number of the current aso is less equal than the version number vnum.
-gt vnum
True if the version number of the current aso is greater than the version number vnum.
-ge vnum
True if the version number of the current aso is greater equal than the version number vnum.
-newer file
True if the current aso is more recently than the argument file which can be an aso (e.g. vfind.c[1.6]).
-size n
True if the file is n blocks long (512 bytes per block).
The primaries may be combined using the operators (, ) for grouping, ! for negation, -a for concatenation (may be omitted) and -o for
alternation of primaries. Parentheses and the exclamation mark are special to the Shell and must be escaped.
vfind does not descent AtFS directories, so the AtFS archives are never selected.
EXAMPLES
To find all asos whose state is busy and that have the symbolic name "foobar":
vfind / -state busy -symbolic foobar -print
To find the latest proposed version of foo.c in the current directory:
vfind -prune 0 . -name foo.c -state proposed -last -print
SEE ALSO vl(1), find(1)INCOMPATIBILITIES
The following find(1) primaries are not recognized or implemented: -link, -nouser, -group, -nogroup, -inum, and -ok.
AUTHOR
Uli.Pralle@cs.tu-berlin.de
Steve Emerson (steve@unidata.ucar.edu) contributed the primary 'SinceName'.
vfind-3.3 Tue Jun 29 16:31:49 1993 vfind(1)