Hallo Peter, hallo Leute, Am Freitag, 11. November 2005 10:46 schrieb Gunreben, Peter (Peter):
find . -name *.[ch] | xargs -n 50 grep -n suchstring
Die Zahl 50 ist die max. Zahl der Argumente. Je nach Länge der Filenames passen da viel mehr 'rein. Diese Lösung sollte schneller laufen, als die find -exec Lösung, da nicht so viele Prozesse gestartet werden müssen.
Wer es ganz bequem haben will, lässt das -n 50 einfach weg. xargs weiß selbst, wie lang die Befehlszeile sein darf. Da wir gerade dabei sind: find . -name "*.[ch]" -print0 | xargs -0 grep -n suchstring vermeidet Probleme bei Leer- oder Sonderzeichen in Dateinamen (find -print0, xargs -0) und das Quoting um *.[ch] verhindert eine verfrühte Expansion in der Bash. Gruß Christian Boltz --
Ansonsten: Ich sage nur "Diwasserstoffmonoxid". Ja, ein äußerst schädliches Zeugs, vor allem wenn es in guten Malt gerät. [A. Schreiber und R. Döblitz]