Christian Kruse: Unix Kommando um Dateien nach bestimmter Zeile zu durchsuchen

Beitrag lesen

你好 Christoph,

Wenn mehr als nur eine Handvoll Dateien durchsucht werden sollen wäre
'find' zu empfehlen:

Ja, aber…

find /verzeichnis/in/dem/gesucht/werden/soll -type f -exec grep -q Suchbegriff {} ; -print

… nicht so! Damit wird für jede Datei ein neues grep gestartet, völlig
unnötigerweise! So macht man es besser:

find . -type f -print0 | xargs -0 grep -lZ -H "pattern" | sed 's!\0.*$!!'

Damit werden genau vier Prozesse gestartet: find, xargs, grep und sed

再见,
 克里斯蒂安

--
Unsere Vorstellungen von der Ewigkeit sind genauso nuetlich wie die Mutmassungen eines Kuehkens ueber die Aussenwelt bevor es die Eierschale aufbricht.
http://wwwtech.de/