Linux: Suche in eingeschränkten Suchergebnis

Ich bin auf der Suche nach bestimmten Inhalten einer Datei. Jedoch sind diese Dateien in einem Verzeichnis mit Unterverzeichnissen enthalten in welcher noch viele weitere Dateien enthalten sind. Diese möchte ich jedoch aus Zeit- und Performancegründen nicht durchsuchen.

Um im ersten Schritt die betroffenen Dateien zu ermitteln nehme ich mir den Linux Befehl find zuhilfe:

vader@deathstar:~# find /var/log/apache2/ -iname "*access*.log"

Um nun in den Inhalten der Dateien zu suchen hilft mir der Befehl grep: 

vader@deathstar:~# grep "bing" /var/log/apache2/access.log

Um diese beiden Befehle nun zu verknüpfen und aus allen in find resultierenden Dateien zu finden steht das Programm xargs zur Verfügung:

vader@deathstar:~# find /var/log/apache2/ -iname "*access*.log" | xargs grep "bing"

Komprimierte Dateien unter Linux durchsuchen

Ich habe auf meinem Hostsystem archivierte Log-Dateien, die ich nach bestimmten Suchbegriffen mittels grep durchsuchen möchte. Um diese Dateien nun aber nicht mühevoll zu entpacken und zu durchsuchen sowie diese im Anschluß wieder löschen zu müssen kann man diese direkt und ohne Umwege mittels zgrep durchsuchen:

zgrep "79.223.29.63" access*.gz

Somit kann ich alle komprimierten access Dateien von Apache nach bestimmten Zugriffen einer IP durchsuchen.