Subject: bug#15926: RFE: unlink command already uses 'unlink' call; make 'rm' use 'remove' call

From: Bernhard Voelker <[email-masked]>
Date: Thu, 21 Nov 2013 08:12:45 +0100

On 11/21/2013 03:07 AM, Eric Blake wrote:
> On 11/20/2013 05:03 PM, Bernhard Voelker wrote:
>> What about the following?
>>
>>   $ src/rm -r src/.
>>   src/rm: refusing to remove '.' or '..' directory: skipping 'src/.'
> 
> That helps.

Thanks, I'll push it unless someone comes up with a better wording.

>  But I'm also starting to think we should add a new long
> option --no-preserve-dot, similar to how --no-preserve-root can be used
> to work around the restriction.  Then people that want to can create an
> alias or other wrapper around rm to get the non-nanny behavior, while
> the default behavior still complies with POSIX.

Admittedly, compared to the academic question behind "--no-preserve-root"
(which is like "what happens to me when the globe under my feet disappears?"),
there may be more real-world reasons to remove ".".

However, as it's possible to pass the canonicalized file name of "."
or ".." to rm(1), I'm not yet convinced that it warrants adding a
new --no-preserve-dot-or-dotdot (and for symmetry reasons a new
--preserve-dot-or-dotdot) option.

Have a nice day,
Berny