logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

find.1 (3528B)


  1. .Dd 2015-10-08
  2. .Dt FIND 1
  3. .Os sbase
  4. .Sh NAME
  5. .Nm find
  6. .Nd find files
  7. .Sh SYNOPSIS
  8. .Nm
  9. .Op Fl H | L
  10. .Ar path Op ...
  11. .Op Ar expression
  12. .Sh DESCRIPTION
  13. .Nm
  14. walks a file hierarchy starting at each
  15. .Ar path
  16. and applies the
  17. .Ar expression
  18. to each file encountered.
  19. .Sh OPTIONS
  20. .Bl -tag -width Ds
  21. .It Fl H
  22. Dereference symbolic links provided as
  23. .Ar path .
  24. .It Fl L
  25. Dereference all symbolic links encountered.
  26. .El
  27. .Sh EXTENDED DESCRIPTION
  28. .Ar expression
  29. is a combination of the following primaries and boolean operators.
  30. In the following descriptions the number n can be replaced by +n, n, or
  31. -n, to mean more than, exactly, or less than n respectively.
  32. .Ss Primaries
  33. .Bl -tag -width Ds
  34. .It Fl name Ar pattern
  35. True if the name of the file matches the given pattern.
  36. .It Fl path Ar pattern
  37. True if the path to the file matches the given pattern.
  38. .It Fl nouser
  39. True if the file belongs to a user for which getpwuid() returns NULL.
  40. .It Fl nogroup
  41. True if the file belongs to a group for which getgrgid() returns NULL.
  42. .It Fl xdev
  43. True.
  44. Do not enter directory on a different device.
  45. .It Fl prune
  46. True.
  47. Do not enter directory.
  48. .It Fl perm Ar mode
  49. True if permissions on the file match mode.
  50. Mode is a symbolic mode as used in chmod.
  51. A leading '-' in mode checks that at least all bits in mode are set in
  52. permissions for file.
  53. Without the leading '-' the permissions for file must exactly match
  54. mode.
  55. .It Fl type Ar t
  56. True if file is of type specified by
  57. .Ar t .
  58. .Bl -tag -width Ds
  59. .It Ar b
  60. block special
  61. .It Ar c
  62. character special
  63. .It Ar d
  64. directory
  65. .It Ar l
  66. symbolic link
  67. .It Ar p
  68. FIFO
  69. .It Ar f
  70. regular file
  71. .It Ar s
  72. socket
  73. .El
  74. .It Fl links Ar n
  75. True if file has
  76. .Ar n
  77. links.
  78. .It Fl user Ar name
  79. True if file belongs to user
  80. .Ar name .
  81. .It Fl group Ar name
  82. True if file belongs to group
  83. .Ar name .
  84. .It Fl size Ar n[c]
  85. True if file size in 512 byte sectors (rounded up), or bytes (if
  86. .Ar c
  87. is given), is
  88. .Ar n .
  89. .It Fl atime n
  90. True if file access time is
  91. .Ar n
  92. days.
  93. .It Fl ctime
  94. True if file status change time is
  95. .Ar n
  96. days.
  97. .It Fl mtime
  98. True if file modified time is
  99. .Ar n
  100. days.
  101. .It Fl exec Ar cmd [arg ...] \&;
  102. Execute cmd with given arguments, replacing each {} in argument list
  103. with the current file.
  104. True if cmd exits with status 0.
  105. .It Fl exec Ar cmd [arg ...] {} +
  106. True.
  107. Add as many files as possible to argument list and execute when the list
  108. is full or all files have been found.
  109. .It Fl ok Ar cmd [arg ...] \&;
  110. Prompt the user on each file encountered whether or not to execute cmd
  111. as with -exec.
  112. True if the user responds yes and cmd exits with status 0, false
  113. otherwise.
  114. .It Fl print
  115. True.
  116. Print the path to the current file.
  117. .It Fl newer Ar file
  118. True if the modification time of the current file is newer than that of
  119. the provided file.
  120. .It Fl depth
  121. True.
  122. Causes find to evaluate files within in a directory before the directory
  123. itself.
  124. .El
  125. .Ss Operators
  126. In order of decreasing precedence
  127. .Bl -tag -width Ds
  128. .It Ar \&( expression \&)
  129. True if expression is true.
  130. .It Ar \&! expression
  131. True if expression if false.
  132. .It Ar expression [ Fl a ] Ar expression
  133. True if both expressions are true.
  134. Second expression is not evaluated if first expression is false.
  135. .Fl a
  136. is implied if there is no operator between primaries.
  137. .It Ar expression Fl o Ar expression
  138. True if either expression is true.
  139. Second expression is not evaluated if first expression is true.
  140. .El
  141. .Pp
  142. If no expression is supplied, -print is used.
  143. If an expression is supplied but none of -print, -exec, or -ok is
  144. supplied, then -a -print is appended to the expressions.