why is this script failing?

Beech Rintoul beech at freebsd.org
Wed Jul 16 07:01:11 UTC 2008


On Tuesday 15 July 2008, Wayne Sierke said:
> On Wed, 2008-07-16 at 11:42 +1000, Norberto Meijome wrote:
> > you can always do
> >
> > find /tmp/kde-*/ -iname "*wav" -print0 | xargs -0 rm -vf
> >
> > the advantage over doing using rm * or for * in ... is that if
> > you have LOTS of files, the expanded list of files may be too
> > much. find | xargs will deal with each file in turn. ( -print0
> > and -0 is to use NULL char as a list delimiter instead of
> > space... ).
>
> Note that - as highlighted in previous discussions on the fbsd
> lists re the use of xargs with find - find is eminently capable of
> handling large argument lists and filenames_with_spaces with its
> own -exec primary:
>
>         find /tmp/kde-*/ -iname "*wav" -exec rm -vf {} \;
>
> to exec rm for each file individually, or:
>
>         find /tmp/kde-*/ -iname "*wav" -exec rm -vf {} \+
>
> to exec rm for multiple files at once.
>
> Piping to xargs in this case is unnecessary.
>
>

And for things like those pesky .SVN dirs in a port:

find /usr/ports/foo/work -depth -type d -name .SVN -exec rm -rf {} \;

Beech
-- 
---------------------------------------------------------------------------------------
Beech Rintoul - FreeBSD Developer - beech at FreeBSD.org
/"\   ASCII Ribbon Campaign  | FreeBSD Since 4.x
\ / - NO HTML/RTF in e-mail   | http://www.freebsd.org
 X  - NO Word docs in e-mail | Latest Release:
/ \  - http://www.FreeBSD.org/releases/7.0R/announce.html
---------------------------------------------------------------------------------------





More information about the freebsd-questions mailing list