Grep 压缩文件?

Grep a gzipped file?

我想看看下面的gzip文件里有没有title url:

curl -O http://www.imdb.com/sitemap_US_02002.xml.gz
grep 'imdb.com/title/tt' sitemap_US_02002.xml.gz

有没有办法做到这一点 'on the fly',也许甚至在单行中?

如果您只是想以流水线方式执行此操作,那么这应该可行:

curl http://www.imdb.com/sitemap_US_02002.xml.gz | zcat | grep 'imdb.com/title/tt'

许多系统(至少 Linux 和 OS X)带有一个 zgrep 实用程序,可以 gzip 解压缩其输入,然后 运行 通过 grep。像这样:

curl http://www.imdb.com/sitemap_US_02002.xml.gz | zgrep 'imdb.com/title/tt'