Я пытаюсь проанализировать несколько файлов, чтобы создать сводный отчет. Каждый файл содержит несколько интересующих меня строк, которые я хочу объединить в одну строку. Каждый файл содержит следующий набор данных, по которым я сопоставляю:
connect *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
*changing value* #0x *changing value*
Моя грубая командная строка выглядит следующим образом:
cat * | grep -E "#0x|connect" | awk '/connect/{CON=$0;next } /#0x/{ print CON "," $0}'
но это объединяет только четыре совпадения для каждого файла в формате, что приводит к
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>
когда я хочу следующее (четыре строки в одну) для каждого файла
connect <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value> , <changing value> #0x <changing value>