Obtém o nome do arquivo do qual o registro vem

1

Eu tenho um grande número de arquivos .gz , que estão sendo descompactados usando zcat juntos.

Estou procurando saber de onde cada registro veio, como no exemplo abaixo:

Arquivo1:

1,2,3,4,5,6,7,NEW,9,10,11,12
13,14,15,55,884,66873,156,8

Usando abaixo o código do arquivo1 ao arquivo10000:

zcat file.gz* | grep "NEW" 

A saída desejada deve ser semelhante:

1,2,3,4,5,6,7,NEW,9,10,11,12 > file1
    
por Eng7 05.08.2015 / 14:45

1 resposta

2

Não é necessário canalizar zcat para grep , basta usar zgrep :

zgrep NEW *.gz

Por padrão, quando chamado em vários arquivos, ele imprime o nome do arquivo onde a correspondência é encontrada. (Não será exatamente como sua saída desejada, mas com base na sua pergunta, ela deve atender às suas necessidades.)

    
por 05.08.2015 / 14:53