Bug 102821

Summary: option "-prune" of "find" command doesn't work as it is described in the manual
Product: [Retired] Red Hat Linux Reporter: Luke <redhatld>
Component: findutilsAssignee: Tim Waugh <twaugh>
Status: CLOSED WORKSFORME QA Contact: Mike McLean <mikem>
Severity: medium Docs Contact:
Priority: medium    
Version: 9CC: dluki
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-08-21 15:04:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Luke 2003-08-21 14:48:23 UTC
Description:

Option "-prune" of "find" command doesn't work (as it is described in the find 
manual)

In the find manual one can read:

**************************************************************************
  -path pattern
         File name matches shell pattern pattern. The metacharacters do
         not treat '/' or '.' specially; so, for example,
                   find . -path './sr*sc'
             will  print an entry for a directory called './src/misc' (if one
         exists).  To ignore a whole directory tree,  use  -prune rather
         than  checking every file in the tree.  For example, to skip the
         directory '/src/emacs/' and all files and  directories under  it,
         and  print the names of the other files found, do something like
         this:
                   find . -path './src/emacs' -prune -o -print
 
**************************************************************************

I have made the appropriate directory tree ('/src/emacs/' and directories under 
it) and I have issued the command:

    find . -path './src/emacs' -prune -o -print

This command has printed also the directory '/src/emacs/' and all files and 
directories under it - it shouldn't do so.

Version-Release number of selected component (if applicable):
findutils-4.1.7-9

Luke.

Comment 1 Tim Waugh 2003-08-21 15:04:48 UTC
Works for me:

$ for a in a b c; do mkdir $a; touch $a/file; done
$ mkdir -p src/emacs; touch src/emacs/file
$ find . -path './src/emacs' -prune -o -print
.
./a
./a/file
./b
./b/file
./c
./c/file
./src