>> Хотелась бы найти утилиту-фреймворк, чтоб не только читать XML, а и без
>> проблем писать(изменять) значения. Тот же xmlstarlet не понимает несколько значений (record):
> эээ, "маладой челове-е-ек!", не пытайтесь нас обмануть!
> ничего искать не надо, всё уже изобретено, прекрасно понимает и работает shell,sed,awk есть в системе и этого достаточно.
Но хочется на другом уровне абстракции.
> (лирическое отступление)
> xmlstarlet (xml), пришлось установить
Это я уже упоминал.
> короче, я сделал за тебя домашку
Не, скорее, разжевал бредовую документацию по работе с переменными.
И это не домашка, а учеба в написании законченного решения. Хз, удасться ли вообще продать хоть одну лицензию :)
> hint:
> чтобы менять нужно указывать что хотм менять, программа не телепат
это понятно.
> так работает
> xml ed -u '/zonelist/domain[@name="domain01.com"]/record[@type="A" and @value="123.255.255.123"
> and @ttl="600"]/@value' -v 0 xml-config.xml
> и так тоже работает
> xml ed -u '//domain[@name="domain01.com"]/record[@type="A" and @value="123.255.255.123"]/@value'
> -v 0 xml-config.xml
Да, понял, рабочее решение.
> рабочие примеры
> xml ed -u '/zonelist/domain[@name="domain01.com"]/record[@type="A" and @value="123.255.255.255"]/@value'
> -v 0 xml-config.xml
> xml ed -u '//domain[@name="domain01.com"]/record[@type="A" and @value="123.255.255.255"]/@value'
> -v 0 xml-config.xml
Записал.
> дарю
> http://xmlstar.sourceforge.net/doc/UG/ch04s03.html
ну, сравни для начала исходный XML.
У меня массив загнан в аттрибут record.
А в примерах жестко аттрибут-значение.