GNU bug report logs - #12339
Bug: rm -fr . doesn't dir depth first deletion yet it is documented to do so.

Previous Next

Package: coreutils;

Reported by: Linda Walsh <coreutils <at> tlinx.org>

Date: Mon, 3 Sep 2012 00:34:02 UTC

Severity: normal

Done: Assaf Gordon <assafgordon <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: "Linda A. Walsh" <law <at> tlinx.org>
Cc: Jim Meyering <meyering <at> redhat.com>, "12339 <at> debbugs.gnu.org" <12339 <at> debbugs.gnu.org>
Subject: bug#12339: [PATCH] rm: avoid bogus diagnostic for a slash-decorated symlink-to-dir
Date: Tue, 04 Sep 2012 17:49:18 -0700
On 09/04/2012 04:21 PM, Linda A. Walsh wrote:> Paul Eggert wrote:

> expecting it to do nothing useful other than issue an error?

Sure.  People might expect the utility to complain about
what they consider to be obvious typos, rather than to
remove files they don't expect to be removed.  For example:

  rm -fr .*

safely removes all file names beginning with "." in the
working directory, without inadvertently removing file names
that do not begin with ".", or files in the parent
directory.  I can see people being used to this sort of
thing, and being annoyed greatly if we change it.

> Ok, will foo/ remove the contents only and not the directory?

No, "rm -fr foo/" removes the directory too.

> It seems so fragile -- because some utils require the /. to make
> sure you don't ALSO remove the directory.

Which utilities are those?  The standard POSIX style is that
foo/ names the directory.

> However, adding foo/ -- does that imply that ./ will also work?

No, "./" is treated as ".".  Sorry.





This bug report was last modified 6 years and 186 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.