-H Do not follow symbolic links, except while processing the command line arguments. When find
examines or prints information about files, the information used shall be taken from the
properties of the symbolic link itself. The only exception to this behaviour is when a file
specified on the command line is a symbolic link, and the link can be resolved. For that
situation, the information used is taken from whatever the link points to (that is, the link is
followed). The information about the link itself is used as a fallback if the file pointed to by
the symbolic link cannot be examined. If -H is in effect and one of the paths specified on the
command line is a symbolic link to a directory, the contents of that directory will be examined
(though of course -maxdepth 0 would prevent this).
If more than one of -H, -L and -P is specified, each overrides the others; the last one appearing on the
command line takes effect. Since it is the default, the -P option should be considered to be in effect
unless either -H or -L is specified.
GNU find frequently stats files during the processing of the command line itself, before any searching
has begun. These options also affect how those arguments are processed. Specifically, there are a
number of tests that compare files listed on the command line against a file we are currently
considering. In each case, the file specified on the command line will have been examined and some of
its properties will have been saved. If the named file is in fact a symbolic link, and the -P option is
in effect (or if neither -H nor -L were specified), the information used for the comparison will be taken
from the properties of the symbolic link. Otherwise, it will be taken from the properties of the file
the link points to. If find cannot follow the link (for example because it has insufficient privileges
or the link points to a nonexistent file) the properties of the link itself will be used.
When the -H or -L options are in effect, any symbolic links listed as the argument of -newer will be
dereferenced, and the timestamp will be taken from the file to which the symbolic link points. The same
consideration applies to -newerXY, -anewer and -cnewer.
The -follow option has a similar effect to -L, though it takes effect at the point where it appears (that
is, if -L is not used but -follow is, any symbolic links appearing after -follow on the command line will
be dereferenced, and those before it will not).
|