find man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

find(1)								       find(1)

NAME
       find - Finds files matching an expression

SYNOPSIS
       find pathname... expression

STANDARDS
       Interfaces  documented on this reference page conform to industry stan‐
       dards as follows:

       find:  XCU5.0

       Refer to the standards(5) reference page	 for  more  information	 about
       industry standards and associated tags.

OPTIONS
       None

OPERANDS
       Starting	 point	in the directory hierarchy.  Series of arguments built
       as described in the DESCRIPTION section.

DESCRIPTION
       The find command recursively searches the directory tree for each spec‐
       ified  path name, seeking files that match the Boolean expression.  The
       output from the find command varies depending  on  the  terms  used  in
       expression.

   Pathname
       The  pathname operand is the starting point in a directory tree for the
       search. If a file name is used for the path name, the current directory
       is assumed. A null path name is not permitted, i.e., find "" returns an
       error.

   Expressions
       In the following descriptions, the argument number is a decimal integer
       that can be specified as +number (more than number), -number (less than
       number), or number (exactly number).  TRUE if the file was accessed  in
       the  past number days, where number is interpreted as described in this
       reference page.	Writes the current file to device in cpio format.  See
       the  cpio command.  TRUE if the file inode was changed in the past num‐
       ber days, where number is interpreted as described  in  this  reference
       page.  Always evaluates to TRUE.	 This causes the descent of the direc‐
       tory hierarchy to be done so  that  all	entries	 in  a	directory  are
       affected	 before the directory itself.  This can be useful when find is
       used with cpio to transfer files	 that  are  contained  in  directories
       without	write  permission.   TRUE  if the command runs and returns a 0
       (zero) value as exit status.  The end of command must be punctuated  by
       a  quoted  or  escaped  ;  (semicolon).	 The  command parameter { } is
       replaced by the current path name.  TRUE if expression is TRUE.	Always
       evaluates to TRUE .  Causes symbolic links to be followed. When follow‐
       ing symbolic links, the find command keeps  track  of  the  directories
       visited	so  that infinite loops can be detected.  For example,	a loop
       can occur if a symbolic link points to  an  ancestor.  This  expression
       should not be used with the -type type expression where type is of type
       l.  TRUE if the file system to which the file belongs is	 of  the  type
       type  as	 follows:  [Tru64  UNIX]  UNIX File System (Berkeley fast file
       system) or a swap partition [Tru64 UNIX]	 Network  File	System	(NFS),
       Version	2  protocol  [Tru64  UNIX]  Memory File System (RAM Disk) (See
       mfs(8)) [Tru64 UNIX]  PC File System [Tru64 UNIX]  System V File System
       [Tru64  UNIX]  ISO  9660	 or High Sierra Formatted (CD-ROM) File System
       [Tru64 UNIX]  DCE Distributed File  System  [Tru64  UNIX]  DCE  Episode
       File  System  [Tru64  UNIX]  Process  File  System  (used by debuggers)
       [Tru64 UNIX]  Advanced File System (AdvFS) [Tru64 UNIX]	File  on  File
       mount (used by streams) [Tru64 UNIX]  File Descriptor File System (used
       by streams) [Tru64 UNIX]	 Reserved for third-party file systems	[Tru64
       UNIX]  Network File System, Version 3 protocol TRUE if the file belongs
       to group.  If group is numeric and does not appear as a group  name  in
       the /etc/group file, it is interpreted as a group ID.  TRUE if file has
       inode number.  TRUE if file has inode number.   [Tru64  UNIX]  TRUE  if
       the  file  has  number links.  See the ln command.  Always evaluates to
       TRUE; causes pathname to be printed together with its  associated  sta‐
       tistics.	  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 contain instead the major and minor device numbers.

	      [Tru64 UNIX]  The find command does not follow symbolic links to
	      other  directories  or  files.  Rather, it applies the specified
	      selection criteria to the symbolic  links	 themselves,  treating
	      them  as	if they were ordinary files.  (For more information on
	      symbolic links, see ln(1).)  [Tru64 UNIX]	 TRUE if  the  current
	      file  is	on  the	 same file system as the current starting path
	      name.  TRUE if the file was modified in the  past	 number	 days,
	      where number is interpreted as described in this reference page.
	      TRUE if file matches the file name.  You can use	pattern-match‐
	      ing  characters, provided they are quoted. In an expression such
	      as [a-z], the dash means through according to the	 current  col‐
	      lating  sequence.	 The  collating	 sequence is determined by the
	      value of the LC_COLLATE environment variable. See the  reference
	      page  for	 your current shell for a more detailed explanation of
	      pattern matching	and  quoting  special  characters.   Sets  the
	      input/output  size (5120 bytes by default) to size.  TRUE if the
	      current file was modified more recently than the file  indicated
	      by file.	The find command asks you whether it should start com‐
	      mand.  If your response begins with y, or the  locale's  equiva‐
	      lent  of	a  y,  command is started.  The end of command must be
	      punctuated by a quoted or escaped semicolon.  TRUE if  the  file
	      permission  code	of  the file exactly matches octal_number (see
	      the chmod(1) reference page).

	      The octal_number argument may be up to three octal  digits.   If
	      you want to test the higher-order permission bits (the set-user-
	      ID bit or set-group-ID bit, for example), prefix the  octal_num‐
	      ber argument with a - (dash).  This makes more flag bits signif‐
	      icant (see the stat system call for an explanation of the	 addi‐
	      tional bits), and also changes the comparison to

	      (flags&octal_number)==octal_number  Always TRUE; causes the cur‐
	      rent path name to be displayed. If an expression is  not	speci‐
	      fied  or	if  expression	is  not	 -ok  or  -exec, -print is the
	      default.	For example, the following commands produce  the  same
	      result:

	      find .  find . -print find . -name "*"

	      Always  TRUE.   Prunes the search tree at the file.  That is, if
	      the current path name is a directory, the find command does  not
	      descend  into that directory.  In a networking environment, this
	      flag keeps the find command from searching through  remote  file
	      systems.	 TRUE if the file is number blocks long (512 bytes per
	      block). For this comparison, the file size is rounded up to  the
	      nearest  block.  TRUE if the file is number bytes long.  TRUE if
	      the file is number kilobytes long. For this comparison, the file
	      size  is	rounded	 up to the nearest kilobyte.  TRUE if the file
	      type is of the specified type as	follows:  [Tru64  UNIX]	 Block
	      special  file  [Tru64  UNIX]  Character  special	file Directory
	      Plain file [Tru64 UNIX]  Symbolic	 link  [Tru64  UNIX]  FIFO  (a
	      named  pipe)  [Tru64  UNIX]  Socket  TRUE if the file belongs to
	      user. If user is numeric and does not appear as a login name  in
	      the  /etc/passwd	file,  it is interpreted as a user ID.	Always
	      TRUE; causes find not to traverse down a file  system  different
	      from the one on which the current path name resides.

       The  primaries  may  be	combined  using	 the  following	 operators (in
       descending order of precedence): A parenthesized group of primaries and
       operators.  Parentheses	are  special to the shell and must be escaped.
       Parentheses must be separated from other primaries and operators by  at
       least one space.	 The negation of a primary (!  is the unary not opera‐
       tor).  Concatenation of primaries (the and operation is implied by  the
       juxtaposition  of  two  primaries  but can also be specified explicitly
       with the -a operator).  Alternation of primaries (-o is the  or	opera‐
       tor).

       To avoid unpredictable results when using a range expression to match a
       class of characters, use a character class  expression  rather  than  a
       standard	 range	expression.   For  information	about  character class
       expressions, see the grep command.

       If the environment variable  STDS_FLAG  is  set	to  ALL,  the  command
       ignores -- if it is given as the first argument.

EXIT STATUS
       The following exit values are returned: All pathname operands were tra‐
       versed successfully.  An error occurred.

RETURN VALUES
       The -exec command expression evaluates TRUE if  the  command  runs  and
       returns a 0 (zero) value as exit status.

EXAMPLES
       To  list	 all  files  in	 the  file system with a given base file name,
       enter: find / -name .profile -print

	      This searches the entire file system  and	 writes	 the  complete
	      path  names  of  all  files named / (forwardslash) tells find to
	      search the root directory and all of its	subdirectories.	  This
	      may  take a while, so it is best to limit the search by specify‐
	      ing the directories where you think the files might be.  To list
	      the  files with a specific permission code in the current direc‐
	      tory tree, enter: find . -perm 0600 -print

	      This lists the names of the files that have only owner-read  and
	      owner-write permission.  The (dot) tells find to search the cur‐
	      rent directory and its subdirectories. See the  chmod(1)	refer‐
	      ence page for details about permission codes.  To search several
	      directories for files with certain permission codes, enter: find
	      manual clients proposals -perm -0600 -print

	      This  lists  the	names  of  the	files that have owner-read and
	      owner-write  permission  and  possibly  other  permissions.  The
	      directories  manual, clients, and proposals, and their subdirec‐
	      tories, are searched.  Note that	-perm  0600  in	 the  previous
	      example selects only files with permission codes that match 0600
	      exactly. In this example, -perm -0600 selects files with permis‐
	      sion  codes  that allow at least the accesses indicated by 0600.
	      This also matches the permission codes 0622 and 2744.  To search
	      for  regular  files  with	 multiple links, enter: find . -type f
	      -links +1 -print

	      This lists the names of the ordinary files (-type f)  that  have
	      more  than  one link (-links +1).	 Note that every directory has
	      at least two links:  the entry in its parent directory  and  its
	      own  (dot)  entry. See the ln command for details about multiple
	      file links.  To find all accessible files whose path name begins
	      with  find,  enter:  find	 find -print To remove all files named
	      a.out or *.o that have not been accessed for a week and that are
	      not  mounted  using  nfs,	 enter: find / \( -name a.out -o -name
	      '*.o' \) -atime +7 -exec \
		     rm {} \; -o -fstype nfs -prune To find all files modified
	      within  the last 24 hours, enter: find . -mtime 1 -print To find
	      all files on the root file system, enter: find /	-mount	-print
	      To  write	 all the files on the root file system to tape, enter:
	      find  /  -mount  -print  -cpio  /dev/tape/tape?_d0  cpio	 -iBvt
	      </dev/tape?_d0

	      Where ?  is the instance number of the tape device, commonly “0”
	      on a single-tape system. Use  the	 hwmgr	command	 to  determine
	      instance	numbers,  as  follows:	# hwmgr show scsi .  .	61:  3
	      cymro	 tape	   none	   0	  1    tape0  [5/0/0].	 .   .
	      To  find	all  the  mount points on the root file system, enter:
	      find / ! -mount -print The next several  examples	 show  how  to
	      build  complex expressions using the available operators.	 These
	      examples use the directory structure that follows: % ls -al

	      total 77 drwxr-xr-x   9 me       users	   8192 Nov  6 17:28 .
	      drwxrwxrwx   47  me	users	    8192 Nov  6 13:30 ..  -rw-
	      r--r--   1 me	  users	      1559 Dec 23  1996	 7  -rw-r--r--
	      1	 me	   users	  7 May 30 12:22 abc -rw-r--r--	  1 me
	      users	     0 Nov  5 17:44 ccc drwxr-xr-x   2 me	 users
	      8192  Apr	  6  1997 crn drwxr-xr-x   3 me	      users	  8192
	      Mar 23  1997 crypto drwxr-xr-x   2 me	  users	      8192 Sep
	      12  14:24	 exp  -rwx--x--x    1 me       users	      0 Nov  1
	      1996 filea ---x-w--wx   1 me	 users		0 Nov  1  1996
	      fileb  -rw-r--r--	   1  me	adm		0 Jun 13 13:43
	      filek -rwxr-xr-x	 1 me	     users	   216	Nov   1	  1996
	      filet -rw-r--r--	 1 me	    users	   0 Nov  6 17:35 find
	      -rw-r--r--   1 me	      adm	     0	Jun  13	 13:43	gfilek
	      -rwxr-xr-x    1  me	 users	       216 Nov	6 17:28 gfilet
	      drwxr-xr-x   2 me	      users	  8192 Oct 23 13:49  h4d  -rw-
	      r--r--	1 me	   adm		  0 Jun 13 13:43 hfilek drwxr-
	      xr-x   2 me	users	    8192 Oct 23 11:50 resume drwxr-xr-
	      x	   2  me       users	   8192 Sep  8 13:31 timtst -rw-r--r--
	      1 me	 users		0 Nov  6 17:25	typescript  drwxr-xr-x
	      2	 me	  users	      8192 Dec 18  1996 wordgame The following
	      example finds all files that have a  name	 starting  with	 file.
	      Notice  that  the	 asterisk must be escaped to prevent the shell
	      from interpreting it as a special character.   %	find  .	 -name
	      file\*

	      ./filea  ./fileb ./filet ./filek The following example finds all
	      files that have a name starting with file and an owning group of
	      adm.  Notice that this is the default behavior, and is identical
	      to the next example using the  -a	 operator.   %	find  .	 -name
	      file\* -group adm

	      ./filek  The  following example finds all files that have a name
	      starting with file and an owning group of adm.  Notice that this
	      is  identical  to	 the prior example of the default behavior.  %
	      find . -name file\* -a -group adm

	      ./filek The following example finds all files that have  a  name
	      starting	with file or that have an owning group of adm.	% find
	      . -name file\* -o -group adm

	      ./filea ./fileb ./filet ./filek ./gfilek ./hfilek The  following
	      example  finds  all files that have a name starting with file or
	      that have an owning group of adm and a name starting with gf.  %
	      find . -name file\* -o -group adm -name gf\*

	      ./filea  ./fileb	./filet ./filek ./gfilek The following example
	      finds all files that have a name starting	 with  file  and  that
	      have  an owning group of adm or a name starting with gf.	% find
	      . -name file\* -a -group adm -o -name gf\*

	      ./filek ./gfilek ./gfilet The following example finds all	 files
	      that  have an owning group other than the group users.  % find .
	      ! -group users

	      ./filek ./gfilek ./hfilek The following example finds all	 files
	      owned by the group users and that have a name starting with file
	      or that have a name starting with cc.  % find . \( -group	 users
	      -a -name file\* \) -o -name cc\*

	      ./filea  ./fileb	./filet	 ./ccc The following example finds all
	      files not owned by the group users and that have a name starting
	      with  file  or that have a name starting with cc.	 % find . \( !
	      -group users -a -name file\* \) -o -name cc\*

	      ./filek ./ccc

ENVIRONMENT VARIABLES
       The following environment variables affect the execution of find:  Pro‐
       vides  a	 default value for the internationalization variables that are
       unset or null. If LANG is unset or null, the corresponding  value  from
       the  default  locale  is used. If any of the internationalization vari‐
       ables contain an invalid setting, the utility behaves as if none of the
       variables  had been defined.  If set to a non-empty string value, over‐
       rides the values	 of  all  the  other  internationalization  variables.
       Determines  the	locale for the interpretation of sequences of bytes of
       text data as characters (for example, single-byte as opposed to	multi‐
       byte  characters	 in  arguments).  Determines the locale for the format
       and contents of diagnostic messages written to standard error.	Deter‐
       mines  the location of message catalogues for the processing of LC_MES‐
       SAGES.  Determines the location of command for -exec and -ok primaries.
       Resolves	 the behavior of the command in some scenarios that cause non‐
       compliance with POSIX standards. Setting this variable to  ALL  enables
       the command to overcome all instances of noncompliance.

FILES
       Contains group information.  Contains user information.

SEE ALSO
       Commands:  chmod(1),  cpio(1),  df(1), grep(1), ln(1), mount(8), Bourne
       shell sh(1b), POSIX shell sh(1p), test(1)

       Functions:  mount(2), stat(2)

       Routines:  getvfsbyname(3)

       Files:  fs(4), fstab(4), cdfs(4)

       Standards:  standards(5)

								       find(1)
[top]

List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net