[prev in list] [next in list] [prev in thread] [next in thread]
List: coreutils-bug
Subject: bug#45924: RFE: rmdir -r: recursively remove [empty] directories under the target.
From: Paul Eggert <eggert () cs ! ucla ! edu>
Date: 2021-01-19 5:18:09
Message-ID: 79041ae7-b494-12b2-27d7-cbb34f4de45f () cs ! ucla ! edu
[Download RAW message or body]
On 1/18/21 8:08 AM, Bernhard Voelker wrote:
> On 1/17/21 11:18 PM, Paul Eggert wrote:
>> find DIR -depth -type d -exec rmdir {} +
>
> find(1) can also find empty directories and delete them:
>
> $ find DIR -type d -empty -delete
Thanks, I'd forgotten about that.
I added the attached to the manual, as the point seems worth documenting
even if we don't change the code.
["0001-doc-rmdir-recursive-substitutes.patch" (text/x-patch)]
From eebed78799a7996dd80b66c493a0fc199705dea3 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Mon, 18 Jan 2021 21:08:39 -0800
Subject: [PATCH] doc: rmdir --recursive substitutes
* doc/coreutils.texi (rmdir invocation): Add note on how to remove
empty subdirectories recursively.
---
doc/coreutils.texi | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/doc/coreutils.texi b/doc/coreutils.texi
index fe2fc52b7..94c9fbfa5 100644
--- a/doc/coreutils.texi
+++ b/doc/coreutils.texi
@@ -11006,7 +11006,19 @@ Give a diagnostic for each successful removal.
@end table
-@xref{rm invocation}, for how to remove non-empty directories (recursively).
+@xref{rm invocation}, for how to remove non-empty directories recursively.
+
+To remove all empty directories under @var{dirname}, including
+directories that become empty because other directories are removed,
+you can use either of the following commands:
+
+@example
+# This uses GNU extensions.
+find @var{dirname} -type d -empty -delete
+
+# This runs on any POSIX platform.
+find @var{dirname} -depth -type d -exec rmdir @{@} +
+@end example
@exitstatus
--
2.27.0
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic