Estou tentando analisar vários arquivos para criar um relatório de resumo. Cada arquivo contém várias linhas de interesse que desejo combinar em uma única linha. Cada arquivo contém o seguinte conjunto de dados que eu estou correspondendo:
connect *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
Minha linha de comando crua é a seguinte
cat * | grep -E "#0x|connect" | awk '/connect/{CON=$0;next } /#0x/{ print CON "," $0}'
mas isso combina apenas quatro correspondências para cada arquivo no formato que leva a
connect <changing value> , <changing value> #0x <changing value>
connect <changing value> , <changing value> #0x <changing value>
connect <changing value> , <changing value> #0x <changing value>
connect <changing value> , <changing value> #0x <changing value>
quando eu quero o seguinte (quatro linhas em um) para cada arquivo
connect <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value>
Tags grep text-processing awk