bin/166554: find -delete is silent when failing to rmdir nonempty directories

Richard Kettlewell rjk at greenend.org.uk
Sun Apr 1 09:30:13 UTC 2012


>Number:         166554
>Category:       bin
>Synopsis:       find -delete is silent when failing to rmdir nonempty directories
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 01 09:30:13 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Richard Kettlewell
>Release:        
>Organization:
>Environment:
>Description:
find -delete is documented as removing files and/or directories. However since it uses rmdir() it cannot remove nonempty directories. This is fine, but it suppresses the error message in this case. This leads to considerable user confusion.

I suggest that:

1. The limitation that it can only remove nonempty directories be documented.
2. The error message not be suppressed (i.e. that the ENOTEMPTY test be removed).

GNU find -delete does produce an error message in this case.

-delete seems to be an extension compare to SUS find, so I don't believe there are any standards-compliance questions here.

>How-To-Repeat:

>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list