Mailinglist Archive: opensuse-de (5177 mails)

< Previous Next >
Re: find | grep
  • From: Jan.Trippler@xxxxxxxxxxx (Jan Trippler)
  • Date: Tue, 24 Jun 2003 21:06:39 +0200
  • Message-id: <20030624210639.A30100@xxxxxxxxxxxxxx>
On Die, 24 Jun 2003 at 17:55 (+0200), Axel Heinrici wrote:
[...]
find ./ -name '*.txt' -exec grep -q egal {} \; -exec echo {} \;

Da kommen dann die Dateinamen raus die find gefunden hat und bei denen
grep "egal" gefunden hat.
grep -q testet ob egal in der Datei enthalten ist und gibt nur einen
Rückgabewert und keine Ausgabe auf stdout. Das echo wird nur
ausgeführt, wenn der erste grep Erfolgreich war.

Was spricht gegen grep -l?
find ./ -name '*.txt' -exec grep \-l egal {} \;

oder (meist schneller):
find ./ -name '*.txt' -print | xargs grep \-l egal

oder (kann mit krummen Dateinamen besser umgehen):
find ./ -name '*.txt' -print0 | xargs -0 grep \-l egal

Nähere Infos:
man grep
man find
man xargs

Jan


< Previous Next >