Então, eu tenho vários logs do Apache usando o formato de log padrão. Quero obter todas as linhas de log que não vieram de um rastreador da web.
Então, digamos que eu tenho um arquivo robot_patterns com entradas como
Googlebot
msnbot-media
YandexBot
bingbot
Se eu executar o comando grep -f robot_patterns *.log
, receberei todas as entradas por bots correspondentes aos padrões acima. Minha lista atual tem ~ 30 entradas de bots e agentes que desejo ignorar.
Mas quero encontrar todas as entradas que NÃO são de bots . Então, eu tento grep -v -f robot_patterns *.log
e nenhum resultado é retornado pelo grep. Não é isso que espero ou desejo, e não estou encontrando uma maneira óbvia de conseguir o que quero. Ao usar a -v
opção combinada com vários padrões em um arquivo, o grep retornará apenas uma linha correspondente se corresponder a TODOS os padrões.
GNU grep 2.6.3
.