script help

Lowell Gilbert freebsd-questions-local at be-well.ilk.org
Tue Feb 15 16:30:42 UTC 2011


Paul Schmehl <pschmehl_lists at tx.rr.com> writes:

> --On February 15, 2011 12:57:12 PM +0300 Peter Andreev
> <andreev.peter at gmail.com> wrote:
>
>> Use of "xargs" on many files will be much faster than "find...exec"
>> construction
>>
>> find / -type f -name copyright.htm | xargs sed -i .bak -e 's/2010/2011/g'
>>
>
> I believe you, but can you explain why this is true?  What makes xargs
> faster than exec?

Classically, exec always spun off a new process for each exec (i.e.,
every single file).

For years now, find(1) has had a POSIX-standard syntax (ending the
command with a '+' syntax for the end of an -exec line, which does
pretty much the same thing in a single command.

Sometimes, the command being used only handles one filename at a time,
and -exec is necessary.


More information about the freebsd-questions mailing list