On Fri, Sep 02, 2005 at 03:29:22PM -0400, Drew Van Zandt wrote: > I would suggest adding a short sentence in the -type explanation > pointing the user to -xtype if -follow is used, e.g.: If using > -follow, see also -xtype.
The Texinfo documentation currently says this: The following differences in behavior occur when the @samp{-L} option is used: @itemize @bullet @item @code{find} follows symbolic links to directories when searching directory trees. @item @samp{-lname} and @samp{-ilname} always return false (unless they happen to match broken symbolic links). @item @samp{-type} reports the types of the files that symbolic links point to. @item Implies @samp{-noleaf} (@pxref{Directories}). @end itemize I have enhanced the final item like so: @item @samp{-type} reports the types of the files that symbolic links point to. This means that in combination with @samp{-L}, @samp{-type l} will be true only for broken symbolic links. To check for symbolic links when @samp{-L} has been specified, use @samp{-xtype}. I have also modified the description of -type and -xtype: @deffn Test -type c True if the file is of type @var{c}: @table @code @item b block (buffered) special @item c character (unbuffered) special @item d directory @item p named pipe (FIFO) @item f regular file @item l symbolic link; if @samp{-L} is in effect, this is true only for broken symbolic links. If you want to search for symbolic links when @samp{-L} is in effect, use @samp{-xtype} instead of @samp{-type}. @item s socket @item D door (Solaris) @end table @end deffn @deffn Test -xtype c This test behaves the same as @samp{-type} unless the file is a symbolic link. If the file is a symbolic link, the result is as follows (in the table below, @samp{X} should be understood to represent any letter except @samp{l}): @table @samp @item @samp{-P -xtype l} True if the symbolic link is broken @item @samp{-P -xtype X} True if the (ultimate) target file is of type @samp{X}. @item @samp{-L -xtype l} Always true @item @samp{-L -xtype X} False unless the symbolic link is broken @end table In other words, for symbolic links, @samp{-xtype} checks the type of the file that @samp{-type} does not check. The @samp{-H} option also affects the behaviour of @samp{-xtype}. When @samp{-H} is in effect, @samp{-xtype} behaves as if @samp{-L} had been specified when examining files listed on the command line, and as if @samp{-P} had been specified otherwise. If neither @samp{-H} nor @samp{-L} was specified, @samp{-xtype} behaves as if @samp{-P} had been specified. @xref{Symbolic Links}, for more information on @samp{-follow} and @samp{-L}. @end deffn > It was not apparent until you pointed it out to me that -type l > wouldn't count a dereferenced link as a link; would find -follow -type > l EVER return anything? If it doesn't ever return anything, it > seems... awkward to have it at all, except for regularity in the > command-line options. Should it "complain" that -follow and -type l > are incompatible? (Note that I'm not saying it should, just raising > the question.) I hope that the above documentation improvements make the situation a bit clearer. I have also made a small change to the manpage:- .IP "\-type \fIc\fR" File is of type \fIc\fR: .RS .IP b block (buffered) special .IP c character (unbuffered) special .IP d directory .IP p named pipe (FIFO) .IP f regular file .IP l symbolic link; this is never true if the \-L option or the \-follow option is in effect, unless the symbolic link is broken. If you want to search for symbolic links when \-L is in effect, use \-xtype. If you have any other suggested changes, please let me know. Regards, James. _______________________________________________ Bug-findutils mailing list Bug-findutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-findutils