У меня есть xml, который я хочу проанализировать в csv, например, я начал работать с awk, я бы хотел продолжить его, но я знаю, что это можно сделать с помощью более языка, например perl Я нашел xmlstarlet, но у меня нет разрешения на установку на сервере, поэтому я открываю все решения. Так что мой Iinput XML являетсяAwk parse xml to csv
<?xml version="1.0"?>
<root>
<record>
<id_client>50C</id_client>
<data>
<mail>[email protected]</mail>
<adress>10 </adress>
<num_tel>001</num_tel>
<key>C</key>
<contact>
<name>toto</name>
<birth>01/30/009</birth>
<city>London</city>
</contact>
</data>
<data>
<mail>[email protected]</mail>
<adress>20</adress>
<num_tel>02200</num_tel>
<key>D1</key>
<contact>
<name>tata</name>
<birth>02/08/2004</birth>
<city>Bruges</city>
</contact>
</data>
</record>
<record>
<id_client>70D</id_client>
<data>
<mail>[email protected]</mail>
<adress>7Bcd</adress>
<num_tel>5555</num_tel>
<key>D2</key>
<contact>
<name>titi</name>
<birth>05/07/2014</birth>
<city>Paris</city>
</contact>
</data>
<data>
<mail>[email protected]</mail>
<adress>888</adress>
<num_tel>881.0</num_tel>
<key>D3</key>
<contact>
<name>awk</name>
<birth>05/08/1999</birth>
<city>Lisbone</city>
</contact>
</data>
Я хотел бы выход в течение файла этого CSV с hearders
id_client;mail;num_tel;key
50C;[email protected];001;C
50C,[email protected];02200;D1
70D;[email protected];5555;D2
70D;[email protected];881.0;D3
Это XML выглядит немного сломана.Отсутствуют теги '', то, что должно быть закрывающим тегом '', является открытием '', а тег' 'во второй записи - только половина. Являются ли фактические входные данные также сломанными, или это просто пример? –
Wintermute
это моя ошибка, я исправлю его, однако файл не разбит, когда он сгенерирован. – iceman225
Используйте XML-парсер, такой как xmllint. –