Unix/Linux Go Back    


BSD 2.11 - man page for find (bsd section 1)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


FIND(1) 										  FIND(1)

NAME
       find - find files

SYNOPSIS
       find pathname-list expression
       find pattern

DESCRIPTION
       In  the first form above, find recursively descends the directory hierarchy for each path-
       name 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.

       The  second  form rapidly searches a database for all pathnames which match pattern.  Usu-
       ally the database is recomputed weekly and contains the pathnames of all files  which  are
       publicly  accessible.   If escaped, normal shell "globbing" characters (`*', `?', `[', and
       ']') may be used in pattern, but the matching differs in that  no  characters  (e.g.  `/')
       have to be matched explicitly.  As a special case, a simple pattern containing no globbing
       characters is matched as though it were *pattern*; if any globbing character appears there
       are no implicit globbing characters.

       -name filename
		 True if the filename argument matches the current file name.  Normal shell argu-
		 ment 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, f, l or s for block  spe-
		 cial  file,  character  special  file,  directory, plain file, symbolic link, or
		 socket.

       -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).

       -nouser	 True if the file belongs to a user not in the /etc/passwd database.

       -group gname
		 True if the file belongs to group gname (group name or numeric group ID).

       -nogroup  True if the file belongs to a group not in the /etc/group database.

       -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 semicolon.  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.

       -ls	 Always  true; causes current pathname to be printed together with its associated
		 statistics.  These include (respectively) inode number, size in kilobytes  (1024
		 bytes),  protection  mode, number of hard links, user, group, size in bytes, and
		 modification time.  If the file is a special file the size  field  will  instead
		 contain  the major and minor device numbers.  If the file is a symbolic link the
		 pathname of the linked-to file is printed preceded by	``->''.   The  format  is
		 identical  to that of ``ls -gilds'' (note however that formatting is done inter-
		 nally, without executing the ls program).

       -newer file
		 True if the current file has been modified more recently than the argument file.

       -cpio file
		 Write the current file on the argument file in cpio format.

       -xdev	 Always true; causes find not to traverse down into a file system different  from
		 the one on which current argument pathname resides.

       The primaries may be combined using the following operators (in order of decreasing prece-
       dence):

       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).

EXAMPLES
       To find all accessible files whose pathname contains `find':

	      find find

       To typeset all variants of manual pages for `ls':

	      vtroff -man `find '*man*/ls.?'`

       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
       /var/db/find.codes     coded pathnames database

SEE ALSO
       sh(1), test(1), fs(5)
       Relevant paper in February, 1983 issue of ;login:.

BUGS
       The first form's syntax is painful, and the second form's exact semantics is confusing and
       can vary from site to site.

       More than one `-newer' option does not work properly.

7th Edition				 October 11, 1996				  FIND(1)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 01:42 PM.