Linux Grep Mehrere Protokolldateien

Linux Grep Mehrere Protokolldateien

Ich muss alle Zeilen in allen Apache-Zugriffsprotokolldateien ausgeben, die den 25. Januar 2013:00:25 enthalten. Mein Hosting-Unternehmen ist bei meiner Untersuchung, herauszufinden, welche Domain einem Spammer das Versenden von E-Mails ermöglicht, nicht hilfreich.

Ich wollte einfach eine "globale" Protokolldatei für alle Zugriffe über Apache durchsuchen, unabhängig von der Domäne, aber mir wurde gesagt, dass es so etwas nicht gibt und ich alle Protokolldateien für alle Domänen separat durchsuchen muss

Der/die Pfad-Platzhalter ist/sind /var/www/vhosts//statistics/logs/access_log und /var/www/vhosts//statistics/logs/access_log.processed

Gibt es einen Grep-Befehl, den ich ausführen kann, um alle übereinstimmenden Zeilen aus allen Dateien abzurufen?

Antwort1

Klar, grepkann mit mehreren Dateien arbeiten. Einfach ausführen

grep '25/Jan/2013:00:25' /var/www/vhosts/*/statistics/logs/access_log{,.processed}

Ihre Shell sollte die Erweiterung problemlos durchführen. Wenn Sie weitere Einzelheiten zur Shell-Erweiterung wünschen, schauen Sie hier nach:
http://www.gnu.org/software/bash/manual/bashref.html#Shell-Expansions

Übrigens, überprüfen Sie Ihre Zeitzeichenfolge noch einmal.

verwandte Informationen