Home Explore Blog CI



man-pages

26th chunk of `find.man`
437651971686844ca3e4f9d4739053802fa9b8ce4413f2950000000100000b08
 including some output.

                  $ find . .. / /tmp /tmp/TRACE compile compile/64/tests/find ‐maxdepth 0 ‐printf ’[%h][%f]\n’
                  [.][.]
                  [.][..]
                  [][/]
                  [][tmp]
                  [/tmp][TRACE]
                  [.][compile]
                  [compile/64/tests][find]

EXIT STATUS
       find  exits  with  status 0 if all files are processed successfully, greater than 0 if errors occur.  This is deliberately a very broad description, but if the return value is non‐zero, you should not rely on the cor‐
       rectness of the results of find.

       When some error occurs, find may stop immediately, without completing all the actions specified.  For example, some starting points may not have been examined or some pending program invocations for -exec ... {} +  or
       -execdir ... {} + may not have been performed.

HISTORY
       As of findutils‐4.2.2, shell metacharacters (‘*’, ‘?’ or ‘[]’ for example) used in filename patterns match a leading ‘.’, because IEEE POSIX interpretation 126 requires this.

       As of findutils‐4.3.3, -perm /000 now matches all files instead of none.

       Nanosecond‐resolution timestamps were implemented in findutils‐4.3.3.

       As of findutils‐4.3.11, the -delete action sets find’s exit status to a nonzero value when it fails.  However, find will not exit immediately.  Previously, find’s exit status was unaffected by the failure of -delete.
       Feature                Added in   Also occurs in
       -files0-from           4.9.0
       -newerXY               4.3.3      BSD
       -D                     4.3.1
       -O                     4.3.1
       -readable              4.3.0
       -writable              4.3.0
       -executable            4.3.0
       -regextype             4.2.24
       -exec ... +            4.2.12     POSIX
       -execdir               4.2.12     BSD
       -okdir                 4.2.12
       -samefile              4.2.11
       -H                     4.2.5      POSIX
       -L                     4.2.5      POSIX
       -P                     4.2.5      BSD
       -delete                4.2.3
       -quit                  4.2.3
       -d                     4.2.3      BSD
       -wholename             4.2.0
       -iwholename            4.2.0
       -ignore_readdir_race   4.2.0
       -fls                   4.0
       -ilname                3.8
       -iname                 3.8
       -ipath                 3.8
       -iregex                3.8

       The syntax -perm +MODE was removed in findutils‐4.5.12, in favour of -perm /MODE.  The +MODE syntax had been deprecated since findutils‐4.2.21 which was released in 2005.

NON‐BUGS
   Operator precedence surprises
       The  command find

Title: `find` Command Exit Status, History, and Operator Precedence
Summary
This section explains the exit status of the `find` command and what it means when errors occur. It also provides a history of changes to the `find` command and features added in different versions of findutils, including the handling of shell metacharacters, the behavior of `-perm /000`, and the introduction of nanosecond-resolution timestamps. The removal of the `-perm +MODE` syntax is also mentioned. The section concludes by touching on the topic of operator precedence surprises with the find command.