Scratch Geschrieben 24. November 2005 Geschrieben 24. November 2005 Hi, wie kann ich grep dazu bringen nur bestimmte Dateitypen (z.B. nur .txt) in allen Unterverzeichnissen zu durchsuchen? grep -ir meinregexp * nimmt alle dateien grep -ir meinregexp *.txt funktioniert nicht Falls das nicht direkt mit grep funktioniert ... kann man vielleicht auch das Ergebnis eines locate an grep übergeben? Danke! Gruß Scratch
t3quill4b0y Geschrieben 24. November 2005 Geschrieben 24. November 2005 und klappts mit locate? Wenn nicht benutz doch find: find . -type f -name *.txt | grep 'deinregexp' habs zwar nicht getestet sollte aber funktionieren
1226 Geschrieben 24. November 2005 Geschrieben 24. November 2005 einfacher: find . -name *.txt -exec grep 'suchstring' {} \;
Scratch Geschrieben 24. November 2005 Autor Geschrieben 24. November 2005 Erstmal Danke für die schnelle Antwort! Leider klappt das nicht so ganz. Ich möchte ja den Inhalt der Dateien durchsuchen und nicht den Dateinamen! Egal ob ich find oder locate nehmen, er geht mit grep nur die Dateinamen durch. Gruß Scratch
1226 Geschrieben 24. November 2005 Geschrieben 24. November 2005 Richtig, ist mir gar nicht aufgefallen. In dem Aufruf, den t3q... gepostet hat, wird dem grep die Ausgabe vom find übergeben. Mach es so, wie ich es geschrieben habe.
Scratch Geschrieben 24. November 2005 Autor Geschrieben 24. November 2005 Danke an alle! benutze nun folgendes find . -name *.log -exec grep --ignore-case --with-filename --binary-files=without-match 'error' {} \; klappt einwandfrei! :marine
Tharsis Geschrieben 25. Juli 2012 Geschrieben 25. Juli 2012 EDIT Hier stand Mist. Sorry sonen alten Thread wieder ausgegraben zu haben
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden