delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm |
List-Unsubscribe: | <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT sourceware DOT cygnus DOT com> |
List-Archive: | <http://sourceware.cygnus.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT sourceware DOT cygnus DOT com> |
List-Help: | <mailto:cygwin-help AT sourceware DOT cygnus DOT com>, |
<http://sourceware.cygnus.com/ml/#faqs> | |
Sender: | cygwin-owner AT sourceware DOT cygnus DOT com |
Delivered-To: | mailing list cygwin AT sourceware DOT cygnus DOT com |
Date: | Tue, 24 Aug 1999 04:25:45 +1000 |
From: | Fergus Henderson <fjh AT cs DOT mu DOT OZ DOT AU> |
To: | Earnie Boyd <earnie_boyd AT yahoo DOT com> |
Cc: | Stephane Bonenfant <sbonenfant AT hotmail DOT com>, |
cygwin users <cygwin AT sourceware DOT cygnus DOT com> | |
Subject: | Re: B20.1: Problem with recursive rm (rm -r) on Windows98 |
Message-ID: | <19990824042544.A31357@murlibobo.cs.mu.OZ.AU> |
References: | <19990820165753 DOT 11353 DOT rocketmail AT web112 DOT yahoomail DOT com> |
Mime-Version: | 1.0 |
X-Mailer: | Mutt 0.95.1i |
In-Reply-To: | <19990820165753.11353.rocketmail@web112.yahoomail.com>; from Earnie Boyd on Fri, Aug 20, 1999 at 09:57:53AM -0700 |
On 20-Aug-1999, Earnie Boyd <earnie_boyd AT yahoo DOT com> wrote: > --- Stephane Bonenfant <sbonenfant AT hotmail DOT com> wrote: > > My problem is the following: > > > > I have many level of directories with .d files and I want to remove them > > all. So I use the command "rm -rf *.d" which will only remove the file on > > the current directory. I though that it will do all other directories since > > I've use -r option. Is that because my directories are not name ending with > > .d ? Any suggestions > > I think the rm syntax requires that the directories recursed be in the argument > list. Therefore, unless the directory ends in .d it won't be seen. To do what > you want you need to create a foreach loop using find and rm. > > E.G.: > foreach FILE in `find . -name *.d`; do rm -f $FILE; done That command will fail if there are too many files ending in `.d', due to fixed limits on the length of a command line. A more robust (and more concise) alternative is to use find . -name *.d | xargs rm -f -- Fergus Henderson <fjh AT cs DOT mu DOT oz DOT au> | "I have always known that the pursuit WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit" PGP: finger fjh AT 128 DOT 250 DOT 37 DOT 3 | -- the last words of T. S. Garp. -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |