Apacheのアクセスログをgrepしようと思ったら、logrotateされたログがgzで固められてました。1個1個はlessで中を見れるけど、全ファイルからgrepは出来ません。開いてはファイル内検索して回るのは、さすがにめんどすぎるので、調べました。 gzの場合 $ zgrep "foo" access_log.2.gz $ gzip -c access_log.2.gz | grep "foo" -cオプションは--stdoutで、解凍結果を標準出力にだします。 $ ls -r | xargs zgrep "foo" ログファイル全部からgrepするにはこうなります。って、通常のコマンドにzつけただけだね。logrorate前のaccess_logだけはgz圧縮されてないけど、zgrepで問題なく調べられます。 tar.gzの場合 $ tar -O -xzvf bar.tar.gz