На этот вопрос уже есть ответ:
У меня есть набор из 100 файлов журнала, сжатых с помощью gzip. Мне нужно найти все строки, соответствующие заданному выражению. Я бы использовал grep, но, конечно, это немного кошмар, потому что мне придется разархивировать все файлы, один за другим, grep и удалить распакованную версию, потому что они не поместятся на моем сервере, если они все были разархивированы.
У кого-нибудь есть небольшой трюк, как это сделать быстро?
Вы можете посмотреть zgrep
.
>$ zgrep -h
grep through gzip files
usage: zgrep [grep_options] pattern [files]
Я могу Не говорю за вас, ключ DKIM, но ваша запись SPF настроена неправильно.
Вы указываете, что запись A, Запись MX и запись PTR разрешены, и тогда + all
говорит, что любой адрес действителен. Если вы хотите исключить другие IP-адреса, тогда это должен быть -all
.
Вы также захотите объявить запись SPF как текстовую запись, так как не все почтовые серверы поддерживают SPF DNS type.
Посмотрите некоторые из инструментов, найденных здесь , чтобы получить помощь в диагностике.
about.com/library/cmd/blcmdl1_zgrep.htm[12136 impression Или, если ваша ОС не поставляется с zgrep
, что-то вроде этого.
gunzip -c somefile1.gz [...] | grep 'string'
There's a utility called zcat
, which is a version of cat
that works on gzipped files. In your situation, you could do something like the following:
zcat yourfile.gz | grep 'serverfault is awesome'
Хотя zgrep
, кажется, следующая лучшая вещь после нарезанного хлеба, я подумал, что выложу альтернативу ...
Вы можете использовать конвейер, чтобы распаковать файлы журнала перед их сборкой, не занимая места на диске. Например:
cat /var/log/program.log.*.gz | gunzip | grep 'stuff and things'