Ich versuche, grep gegen eine Liste von ein paar hundert Dateien auszuführen:
$ head -n 3 <(cat files.txt)
admin.php
ajax/accept.php
ajax/add_note.php
Obwohl ich nach einer Zeichenfolge greife, von der ich weiß, dass sie in den Dateien enthalten ist, werden die Dateien nicht durchsucht:
$ grep -i 'foo' <(cat files.txt)
$ grep -i 'foo' admin.php
The foo was found
Ich kenne das -f
Flag, das die Muster aus einer Datei liest . Aber wie liest man die Eingabedateien ?
Ich hatte über die schreckliche Umgehung nachgedacht, die Dateien in ein temporäres Verzeichnis zu kopieren, das cp
das <(cat files.txt)
Format zu unterstützen scheint , und von dort aus die Dateien zu durchsuchen. Shirley, es gibt einen besseren Weg.
while
die Zeilen von file.txt als solche empfangen werden konnten.