Использование: Shell Script
Помогите, пожалуйста, преобразовать файл, показанный ниже, в формат YAML, который вы хотели бы использовать в качестве var
файла для ansible playbook.
file
: (на самом деле это был XML, я обрезал верхний / нижний колонтитул и отфильтровал только необходимые строки)
<elementType>steering-pool</elementType>
<attribute>
<name>ip-address</name>
<value>10.10.10.12</value>
</attribute>
<attribute>
<name>start-port</name>
<value>60</value>
</attribute>
<attribute>
<name>end-port</name>
<value>100</value>
</attribute>
<elementType>steering-pool</elementType>
<attribute>
<name>ip-address</name>
<value>10.10.10.13</value>
</attribute>
<attribute>
<name>start-port</name>
<value>70</value>
</attribute>
<attribute>
<name>end-port</name>
<value>100</value>
</attribute>
<elementType>steering-pool</elementType>
<attribute>
<name>ip-address</name>
<value>10.10.10.14</value>
</attribute>
<attribute>
<name>start-port</name>
<value>80</value>
</attribute>
<attribute>
<name>end-port</name>
<value>100</value>
</attribute>
Количество элементов может отличаться, например, в приведенном выше файле три и каждый элемент имеет ip-address
, start-port
, end-port
.
Я изо всех сил пытаюсь записать эту информацию в массив, как показано ниже.
steering-pool:
ip-address:10.10.10.12 start-port:60 end-port:100
ip-address:10.10.10.13 start-port:70 end-port:100
ip-address:10.10.10.14 start-port:80 end-port:100
, пожалуйста, предложите, какой лучший подход я мог бы использовать для преобразования это в вывод, показанный выше.
СПАСИБО заранее.