unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (v7man)
Page:
Section:
Apropos / Subsearch:
optional field

FIND(1)                                                                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 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.
       -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)