Difference between revisions of "32v 1m find"

From Computer History Wiki
Jump to: navigation, search
(New page: FIND(1) UNIX Programmer's Manual FIND(1) == NAME == find - find files == SYNOPSIS == find pathname-list expression == DESCRIPTION == _F_i_n_d ...)
 
m (formatting)
 
Line 1: Line 1:
FIND(1)             UNIX Programmer's Manual             FIND(1)
+
FIND(1)   UNIX Programmer's Manual   FIND(1)
  
  
  
 
== NAME ==
 
== NAME ==
    find - find files
+
find - find files
  
 
== SYNOPSIS ==
 
== SYNOPSIS ==
    find pathname-list  expression
+
find pathname-list  expression
  
 
== DESCRIPTION ==
 
== DESCRIPTION ==
    _F_i_n_d recursively descends the directory hierarchy for each
+
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.
    pathname in the _p_a_t_h_n_a_m_e-_l_i_s_t (i.e., one or more pathnames)
 
    seeking files that match a boolean _e_x_p_r_e_s_s_i_o_n 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
+
-name filename
              True if the _f_i_l_e_n_a_m_e argument matches the current
+
True if the filename argument matches the current file name.  Normal Shell argument syntax may be used if escaped (watch out for `[', `?' and `*').  
              file name.  Normal Shell argument syntax may be
 
              used if escaped (watch out for `[', `?' and `*').
 
  
    -perm onum
+
-perm onum
              True if the file permission flags exactly match
+
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.
              the octal number _o_n_u_m (see _c_h_m_o_d(1)).  If _o_n_u_m is
 
              prefixed by a minus sign, more flag bits (017777,
 
              see _s_t_a_t(2)) become significant and the flags are
 
              compared: (_f_l_a_g_s&_o_n_u_m)==_o_n_u_m.
 
  
    -type c  True if the type of the file is _c, where _c is b,
+
-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.
              c, d or f for block special file, character spe-
 
              cial file, directory or plain file.
 
  
    -links n  True if the file has _n links.
+
-links n  True if the file has n links.
  
    -user uname
+
-user uname
              True if the file belongs to the user _u_n_a_m_e (login
+
True if the file belongs to the user uname (login name or numeric user ID).
              name or numeric user ID).
 
  
    -group gname
+
-group gname
              True if the file belongs to group _g_n_a_m_e (group
+
True if the file belongs to group gname (group name or numeric group ID).
              name or numeric group ID).
 
  
    -size n  True if the file is _n blocks long (512 bytes per
+
-size n  True if the file is n blocks long (512 bytes per block).
              block).
 
  
    -inum n  True if the file has inode number _n.
+
-inum n  True if the file has inode number n.
  
    -atime n  True if the file has been accessed in _n days.
+
-atime n  True if the file has been accessed in n days.
  
    -mtime n  True if the file has been modified in _n days.
+
-mtime n  True if the file has been modified in n days.
  
    -exec command
+
-exec command
              True if the executed command returns a zero value
+
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.
              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
+
-ok command
              Like -exec except that the generated command is
+
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.
              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
+
-print    Always true; causes the current pathname to be printed.
              printed.
 
  
    -newer file
+
-newer file
              True if the current file has been modified more
+
True if the current file has been modified more recently than the argument file.
              recently than the argument _f_i_l_e.
 
  
    The primaries may be combined using the following operators
+
The primaries may be combined using the following operators (in order of decreasing precedence):
    (in order of decreasing precedence):
 
  
    1)  A parenthesized group of primaries and operators
+
1)  A parenthesized group of primaries and operators (parentheses are special to the Shell and must be escaped).
        (parentheses are special to the Shell and must be
 
        escaped).
 
  
    2)  The negation of a primary (`!' is the unary _n_o_t opera-
+
2)  The negation of a primary (`!' is the unary not operator).
        tor).
 
  
    3)  Concatenation of primaries (the _a_n_d operation is implied
+
3)  Concatenation of primaries (the and operation is implied by the juxtaposition of two primaries).
        by the juxtaposition of two primaries).
 
  
    4)  Alternation of primaries (`-o' is the _o_r operator).
+
4)  Alternation of primaries (`-o' is the or operator).
  
 
== EXAMPLE ==
 
== EXAMPLE ==
    To remove all files named `a.out' or `*.o' that have not
+
To remove all files named `a.out' or `*.o' that have not been accessed for a week:
    been accessed for a week:
 
  
      find / \( -name a.out -o -name '*.o' \) -atime +7 -exec rm
+
  find / \( -name a.out -o -name '*.o' \) -atime +7 -exec rm
      {} \;
+
  {} \;
  
 
== FILES ==
 
== FILES ==
    /etc/passwd
+
/etc/passwd
    /etc/group
+
/etc/group
  
 
== SEE ALSO ==
 
== SEE ALSO ==
    [[32v 1m sh|sh(1)]], [[32v 1m test|test(1)]], [[32v 5m filsys|filsys(5)]]
+
[[32v 1m sh|sh(1)]], [[32v 1m test|test(1)]], [[32v 5m filsys|filsys(5)]]
  
 
== BUGS ==
 
== BUGS ==
    The syntax is painful.
+
The syntax is painful.
  
 
[[Category:32v man section 1]]
 
[[Category:32v man section 1]]

Latest revision as of 05:28, 5 October 2015

FIND(1) UNIX Programmer's 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 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.