find -exec rm vs. xargs rm

26/08/2007 - 16:01 von Christian Kujau | Report spam
Hi,

ich verwende gerne "find ... -exec rm '{}' \;' um Dateien zu finden (und
dann zu loeschen). Dies geht wohl auch mit "... -print0 | xargs -0 rm"
und ich frage mich oft, was gegen die eine oder andere Variante spricht.

Vielmehr: wann sollte ich erstere Variante *nicht* einsetzen? Ich finde
im Netz dazu nicht wirklich viel, nur einen Thread[0], in dem behauptet
wird, dass "| xargs -0 rm" schneller waere, weil nur ein /bin/rm
aufgerufen wird. Dann verstehe ich aber nicht, wie hier das E2BIG
(Argument list too long) Problem umgangen wird.
Ist "-exec" evtl. nicht in allen find(1) Implementationen enthalten?

Thoughts?

Christian.

[0]https://www.zarb.org/pipermail/jpac...07975.html
BOFH excuse #164:

root rot
 

Lesen sie die antworten

#1 Cyrus Kriticos
26/08/2007 - 16:49 | Warnen spam
Christian Kujau wrote:

ich verwende gerne "find ... -exec rm '{}' \;' um Dateien zu finden (und
dann zu loeschen). Dies geht wohl auch mit "... -print0 | xargs -0 rm"
und ich frage mich oft, was gegen die eine oder andere Variante spricht.



*lol*

Ich habe nichts gegen Deine Frage. Versteh mich nicht falsch, aber
mindestens einmal im Monat tritt jemand die exec-vs-xargs-Diskussion in
dieser Newsgroup los.

Best regards | "The only way to really learn scripting is to write
Cyrus | scripts." -- Advanced Bash-Scripting Guide

Ähnliche fragen