find - find files meeting a given condition

     find directory expression


     find /  -name a.out -print
                         # Print all a.out paths

     find /usr/ast ! -newer f -ok rm {} \;
                         # Ask before removing

     find /usr -size +20 -exec mv {} /big \^;
                         # move files > 10k

     find / \( -name a.out -o -name '*.o' \) -exec rm {} \;
                         # 2 conds


     Find descends the file tree starting at the given directory checking each
     file  in  that  directory and its subdirectories against a predicate.  If
     the predicate is true,  an  action  is  taken.   The  predicates  may  be
     connected by -a (Boolean and), -o (Boolean or) and !  (Boolean negation).
     Each predicate is true under the conditions specified below.  The integer
     n  may  also be +n to mean any value greater than n, -n to mean any value
     less than n, or just n for exactly n.

          -name s    true if current filename is s (include shell wild cards)
          -size n    true if file size is n blocks
          -inum n    true if the current file's i-node number is n
          -mtime n   true if modification time relative to today (in days)  is
          -links n   true if the number of links to the file is n
          -newer f   true if the file is newer than f
          -perm n    true if the file's permission bits = n (n is in octal)
          -user u    true if the uid = u (a numerical value, not a login name)
          -group g   true if the gid = g (a numerical value, not a group name)
          -type x    where x  is  bcdfug  (block,  char,  dir,  regular  file,
                     setuid, setgid)
          -xdev      do not cross devices to search mounted file systems

     Following the expression can be one of the following, telling what to  do
     when a file is found:

          -print     print the file name on standard output
          -print0    print the file name terminated by a null character, to be
                     used with xargs -0.  (Minix extension).

          -exec      execute a command, {} stands for the file name
          -ok        prompts before executing the command

     test(1), xargs(1).