Problemas com retorno do comando GREP - Shell Script

Infraestrutura

26/06/2017

Boa tarde pessoal,

Estou com um problema na utilização do comando GREP. Estou precisando varrer diversos arquivos de logs de erros atrás de determinados códigos e retornar para um arquivo.

O exemplo seria:

log_erro_20170625_010622.txt
log_erro_20170625_030622.txt
log_erro_20170625_040622.txt
log_erro_20170625_050622.txt
log_erro_20170625_070622.txt

Dentro dele procuro o seguinte trecho 112d3;aff3d;00001

Dando o comando echo $(grep '112d3;aff3d;00001' log_erro_*)

Quando ele me retorna, o resultado é o seguinte:
log_erro_20170625_030622.txt: erro_client;112d3;aff3d;00001;failer_execution; log_erro_20170625_040622.txt: erro_client;112d3;aff3d;00001;failer_execution;

Mesmo localizando em dois arquivos diferentes, ele me retorna como uma única linha, mas eu precisava que o retorno fosse em linhas separadas.
Tipo:
Linha 1: log_erro_20170625_030622.txt: erro_client;112d3;aff3d;00001;failer_execution;
Linha 2: log_erro_20170625_040622.txt: erro_client;112d3;aff3d;00001;failer_execution;

Alguém saberia me ajudar com essa dor de cabeça, pois isso é bem urgente.
Eduardo Guimaraes

Eduardo Guimaraes

Curtidas 0

Respostas

Navegante

Navegante

26/06/2017

Dependendo da versão do grep, você pode tentar usar usar o --group-separator.
GOSTEI 0
Fabio Rocha

Fabio Rocha

26/06/2017

Eduardo,

Tente utilizar os parametros abaixo.

 grep -rin "112d3;aff3d;00001" log_erro_*


-r, --recursive
-n, --line-number
-i, --ignore-case

Abraços
GOSTEI 0
POSTAR