Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Does there exist a magical shell piping which would allow easily to grep through bunch of .gz log files without needing to extract them somewhere?

.gz files are Apache logs, result of log rotation. I'd like to quickly check how often certain URIs are accessed in the past.

share|improve this question

5 Answers 5

up vote 16 down vote accepted

The zgrep program is available for Linux (and perhaps some Unix too). This will decompress the files and then grep through them.

share|improve this answer
4  
+1. See also: zcat, zegrep, zmore, zless... –  SmallClanger May 11 '11 at 12:15

Should you for some reason lack zgrep you can do the same thing with gunzip and a pipe:

gunzip -c <filename.gz> | grep <whatever you want to grep for>
share|improve this answer

You can just use zgrep to grep through compressed files.

If you need to use a specific grep, you can set the GREP environment variable:

export GREP=/bin/egrep
share|improve this answer

How about zgrep? Seems to be installed on Mac OS and Ubuntu 11.04.

share|improve this answer

I usually use:

zcat filename.gz | less

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.