Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ find(1) — A/UX 0.7

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chmod(1)

cpio(1)

csh(1)

ksh(1)

sh(1)

test(1)

stat(2)

cpio(4)

fs(4)



     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.  find does not follow symbolic links.
          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 file    True if file matches the current filename.
                        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.

          -type c       True if the type of the file is c, where c is
                        b, c, d, l, p, or f for block special file,
                        character special file, directory, symbolic
                        link, fifo (named pipe), or plain file,
                        respectively.

          -links n      True if the file has n links.

          -user uname   True if the file belongs to the user uname.
                        If is numeric and does not appear as a login
                        name in the /etc/passwd file, it is taken as a
                        user ID.

          -group gname  True if the file belongs to the group gname.
                        If gname is numeric and does not appear in the
                        /etc/group file, it is taken as a group ID.

          -size n[c]    True if the file is n blocks long (512 bytes
                        per block).  If n is followed by a c, the size
                        is in characters.

          -atime n      True if the file has been accessed in n days.
                        The access time of directories in pathname-
                        list is changed by find itself.

          -mtime n      True if the file has been modified in n days.




     Page 1                                        (last mod. 1/16/87)





     find(1)                                                   find(1)



          -ctime n      True if the file has been changed in n days.

          -exec cmd     True if the executed cmd returns a zero value
                        as exit status.  The end of cmd must be
                        punctuated by an escaped semicolon.  A command
                        argument of the form {} is replaced by the
                        current pathname.

          -ok cmd       Like -exec, except that the generated command
                        line is printed with a question mark first,
                        and is executed only if the user responds by
                        typing y.

          -print        Always true; causes the current pathname to be
                        printed.

          -cpio device  Always true; write the current file on device
                        in cpio(4) format (512-byte records).

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

          -depth        Always true; causes descent of the directory
                        hierarchy to be done so that all entries in a
                        directory are acted on before the directory
                        itself.  This can be useful when find is used
                        with cpio(1) to transfer files that are
                        contained in directories without write
                        permission.

          ( expression )
                        True if the parenthesized expression is true
                        (parentheses are special to the shell and must
                        be escaped).

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

          1)  The negation of a primary (!  is the unary not
              operator).

          2)  Concatenation of primaries (the and operation is implied
              by the juxtaposition of two primaries).

          3)  Alternation of primaries (-o is the or operator).

     EXAMPLE
               find / -perm 755 -exec ls "{}" ";"

          will find all files, starting with the root directory, on
          which the permission levels have been set to 755 (see
          chmod(1)).



     Page 2                                        (last mod. 1/16/87)





     find(1)                                                   find(1)



          With -exec and a command such as ls, it is often necessary
          to escape the "{}" that stores the current pathname under
          investigation by putting it in double quotes.  It is always
          necessary to escape the semicolon at the end of an -exec
          sequence.

          Note again that it is also necessary to escape parentheses "
          \( " and " \) " used for grouping primaries, by means of a
          backslash.

               find \( -name a.out -o -name '*.o' \) -atime +7 -exec
               rm {} \;

          removes all files named a.out or *.o that have not been
          accessed for a week.

     FILES
          /bin/find
          /etc/passwd
          /etc/group

     SEE ALSO
          chmod(1), cpio(1), csh(1), ksh(1), sh(1), test(1), stat(2),
          cpio(4), fs(4),
          ``Other tools'' in Oreo Programming Languages and Tools,
          Volume 2.





























     Page 3                                        (last mod. 1/16/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026