LINUX.ORG.RU

Разбор, в csv

 ,


0

1

Есть текстовый файл в таком виде:

Адрес: АдресГлоб1_2
Фамилия1_1 Имя1_1 Отчество1_1;Адрес1_1;ДР1_1
Фамилия1_2 Имя1_2 Отчество1_2;Адрес1_2;ДР1_2
Адрес: АдресГлоб2_4
Фамилия2_1 Имя2_1 Отчество2_1;Адрес2_1;ДР2_1
Фамилия2_2 Имя2_2 Отчество2_2;Адрес2_2;ДР2_2
Фамилия2_3 Имя2_3 Отчество2_3;Адрес2_3;ДР2_3
Фамилия2_4 Имя2_4 Отчество2_4;Адрес2_4;ДР2_4
Адрес: АдресГлоб3_3
Фамилия3_1 Имя3_1 Отчество3_1;Адрес3_1;ДР3_1
Фамилия3_2 Имя3_2 Отчество3_2;Адрес3_2;ДР3_2
Фамилия3_3 Имя3_3 Отчество3_3;Адрес3_3;ДР3_3
Неодходимо получить текстовый файл в таком виде (csv):


АдресГлоб;ФИО;Адрес;ДР
АдресГлоб1_2;Фамилия1_1 Имя1_1 Отчество1_1;Адрес1_1;ДР1_1
АдресГлоб1_2;Фамилия1_2 Имя1_2 Отчество1_2;Адрес1_2;ДР1_2

Ответ на: комментарий от tosick4

awk, разумеется. В строчках с адресом запоминаешь адрес, в остальных строчках печатаешь адрес первым, затем остальное.

BEGIN {IFS=": "}
$1=="Адрес" {addr_glob=$2; next}
{printf "%s;%s", addr_glob, $0} 

legolegs ★★★★★ ()